我想将 NSString @"2525"
转换为 NSString @"0032003500320035"
。 十六进制"2"
的 8 字节 ASCII 值是 "0032"
,对于"5"
,它是"0035"
。 只是为了获得 c 字符串等效物,我尝试了...
const char *pinUTF8 = [pin cStringUsingEncoding:NSASCIIStringEncoding];
。但正如你所看到的,我正在为此苦苦挣扎,我知道这不会那么容易。 有什么提示吗?
提前非常感谢您的智慧!
试试这个:
NSString *str = @"2525";
const char *s = [str cStringUsingEncoding:NSASCIIStringEncoding];
size_t len = strlen(s);
NSMutableString *asciiCodes = [NSMutableString string];
for (int i = 0; i < len; i++) {
[asciiCodes appendFormat:@"%04x", (int)s[i]];
}
NSLog(@"%@", asciiCodes);