我有一个小问题。当我有一个字符串“3 568 030”,并使用[myString intValue]时,它只给出了3的结果,问题是我想将整个数字转换为int / nsinteger。 如果有帮助的话,字符串始终只包含数字。 我尝试使用replaceoccurencesofstring(或者是什么名字),但它似乎不起作用...
谢谢
我有一个小问题。当我有一个字符串“3 568 030”,并使用[myString intValue]时,它只给出了3的结果,问题是我想将整个数字转换为int / nsinteger。 如果有帮助的话,字符串始终只包含数字。 我尝试使用replaceoccurencesofstring(或者是什么名字),但它似乎不起作用...
谢谢
做:
NSString *str = @"3 568 030";
int aValue = [[str stringByReplacingOccurrencesOfString:@" " withString:@""] intValue];
NSLog(@"%d", aValue);
输出
3568030
NSString *trimmedString = [myString stringByReplacingOccurrencesOfString:@" " withString:@""];
NSInteger *value = [trimmedString intValue];
stringByReplacingOccurrencesOfString::
方法。//Remove spaces.
myString = [myString stringByReplacingOccurencesOfString:@" " withString @""];
int myNumber = [myString intValue];
首先,使用以下方法从原始字符串中删除所有空格:
NSString *trimmedString = [yourOriginalString stringByTrimmingCharactersInSet:
[NSCharacterSet whitespaceAndNewlineCharacterSet]];
然后,您可以将其转换为int/NSInteger。注意:使用[myString intValue]
会将您的字符串转换为int,但[myString integerValue]
会将其转换为NSInteger。
NSNumberFormatter * f = [[NSNumberFormatter alloc] init];
[f setNumberStyle:NSNumberFormatterDecimalStyle];
NSNumber * myNumber = [f numberFromString:@"42"];
[f release];