将字符串转换为int-objective c
我还没有弄清楚如何将NSString转换为int。我试图将ASCII转换为文本,但要做到这一点,我需要将一个字符串转换为一个int。将字符串转换为int-objective c
我觉得很奇怪,这不是在线或堆栈溢出。我确定我不是那个需要这个的在线人。
在此先感谢您的帮助。
P.S.如果这能帮助这里是我使用转换为ASCII代码:
+ (NSString *) decodeText:(NSString *)text {
NSArray * asciiCode = [text componentsSeparatedByString:@"|"];
int i = 0;
NSMutableString *decoded;
while (i < ([asciiCode count]-1)) {
NSString *toCode = [asciiCode objectAtIndex:i];
int codeInt = toCode;
NSString *decode = [NSString stringWithFormat:@"%c", codeInt];
[decoded appendString:decode];
}
return decoded;
}
为了解析字符串为整数,你应该做的:
NSString *a = @"123abc";
NSInteger b = [a integerValue];
你也可以用int来做到这一点。感谢您的帮助。 – DonyorM
gr8 ...享受编码 –
分数可能偏离主题,但转换为ASCII你可以只使用:
[NSString dataUsingEncoding:NSASCIIStringEncoding allowLossyConversion:YES]
或者在你的榜样:
return [text dataUsingEncoding:NSASCIIStringEncoding allowLossyConversion:YES];
这将返回一个NSData,如果这是您需要的,您可以遍历该NSData以获取ASCII的字符串表示形式(根据您的方法)。
使用这种方法的原因是因为NSString的可以存储非ASCII字符,你当然可能会失去细节,但启用allowLossyConversion标志将尝试克服这一点。按照the Apple documentation:
例如,在从NSUnicodeStringEncoding的字符转换为 NSASCIIStringEncoding,字符“A”变为“A”,失去 口音。
我看了很多问题,但找不到答案。这就是我问的原因。 – DonyorM