2011-04-22 5 views
1

나는 어리석은 질문이라고 생각하지만, 이걸로 무엇을 해야할지 모르겠다. 각 주문 가격 문자열은 "123,145,234,33,8"형식으로 나온다. 많은 주문들이있다. 이것은 한 주문에 대해서만 말해 줄 수 있니? 어떻게하면이 모든 값을 추가하고 "123 + 145 + 234 + 33 + 8"= 543. 총계를 얻을 수 있습니까? 합계는 각 주문에 대해 tableview에 표시해야합니다. 나는 이것들을 고수했다. 나는 아이폰을위한 이런 것들을 개발한다.아이폰에 문자열을 추가하는 방법 구분 기호로 구분 ","?

감사합니다. 정보가 완전하지 않은 경우 알려주십시오.

답변

1

분할 ,에 의해 문자열, 숫자로 변환하고이를 요약 : 당신의 캐릭터는 항상 추가 후행 ,이있는 경우,

NSArray *parts = [myString componentsSeparatedByString:@","]; 
for (NSString *s in parts) { 
    sum += [s integerValue]; 
} 

을 당신은 예를 들어, 수

NSRange trimRange = NSMakeRange(0, [myString length]-1); 
NSString *trimmed = [myString substringWithRange:trimRange]; 

... 또는 더 복잡한 경우에는 -stringByTrimmingCharactersInSet:을 사용하여 조정하십시오.

+0

에 약간의 수정은 내가 당신의 대답은 정말 내 문제가 해결되어 감사하지만 난이 함께하려고 할 때 예기치 않은 어떤을 얻었다. 문제는 내 전체 문자열의 끝에 ","당신은 "123,145,234,33,8"처럼 "123,0,145.3,234.66,33.9,8.8"과 같은 값으로 올 수 있습니다. 그것에 대해 더 알고 싶습니다 [email protected] Fritzsche – prathamiphone

+0

@prath : 분수 가격이 있다면 [NSDecimalNumber'] (http://developer.apple.com/library/ios/#documentation/Cocoa/Reference/)와 함께 가고 싶을 것입니다. Foundation/Classes/NSDecimalNumber_Class/Reference/Reference.html # // apple_ref/doc/uid/20000179-decimalNumberWithString_)를 참조하십시오. –

0

게오르그 FRITZSCHE의 대답

NSMutableArray* array = [NSMutableArray arrayWithArray:[myString componentsSeparatedByString:@","]]; 

//// Remove last object. You might want to make sure it's always the case. //// 
[array removeLastObject]; 

//// Here's a cool trick using Collection Operators. //// 
NSNumber* sum = [array valueForKeyPath:@"@sum.intValue"]; 

NSInteger k = [sum intValue]; 
관련 문제