我有一个NSString,其中存储的数据如下(ASCII编码):41303031,我想将它们转换为普通字符串,因此我的输出应该是A001。我在问你怎么把41303031转换成A001?有一个聪明的方法可以做到这一点,否则我应该生成一个像这样的愚蠢的函数
- (NSString*)stringAsciiToString:(NSString*)string {
NSString* output;
if([string isEqualToStrin:@"41"]) {
output = @"A";
}
return output;
}发布于 2016-05-30 23:05:00
我解决了。对于任何感兴趣的人,我在这里发布代码:
- (NSString*)asciiStringToString: (NSString*)string {
NSString *output;
NSScanner *scanner = [NSScanner scannerWithString:string];
unsigned asciiCode = 0;
[scanner scanHexInt:&asciiCode];
output = [NSString stringWithFormat:@"%c", asciiCode];
return output;
}其中string是我的起始字符串: 41303031。扫描器将十六进制转换为int,然后我使用int将正确的值写入输出字符串。
https://stackoverflow.com/questions/37526284
复制相似问题