我正在解析一些 XML,其中包含格式化100,000+
为 NSString 的数字。我想将这些值转换为我用它们计算的整数。既然有“,”和“+”,我该怎么做?
问问题
120 次
3 回答
2
试试这个代码
NSMutableString* string = [NSMutableString stringWithString: @"100,000+"];
[string replaceOccurencesOfString: @"\," withString: @"" options: 0 range: NSMakeRange(0, [string length] ) ];
[string replaceOccurencesOfString: @"\+" withString: @"" options: 0 range: NSMakeRange(0, [string length] ) ];
NSInteger intValue = [string integerValue];
于 2013-01-22T14:18:48.980 回答
1
你总是可以去掉你不想要的字符:
[yourStringObject stringByReplacingOccurrencesOfString:@"+" withString:@""];
然后它很简单:
[yourStringObject intValue];
于 2013-01-22T14:18:36.703 回答
0
它们总是用+
? 您可以检查该符号(或您可能拥有的其他符号)的字符串并将其删除,然后正常转换它。
这是一些代码:
NSString *value = @"100,100+";
unichar lastChar = [value characterAtIndex:value.length - 1];
if (lastChar < '0' || lastChar > '9') // check for any symbol
value = [value substringToIndex:characterAtIndex:value.length - 1]; // remove it
value = [value stringByReplacingOccurrencesOfString:@"," withString:@"."]; // in case intValue doesn't handle commas, not sure if necessary
NSInteger result = [value intValue];
于 2013-01-22T14:17:43.560 回答