我有一个带有“hello”字符串的NSString。
现在我想将字符串转换为另一个显示十六进制字符串的NSString对象。怎么做?
答案 0 :(得分:6)
嗯 - 除了在其他地方可以找到的显而易见的东西之外 - 怎么样:
NSString * str = @"Hello World";
NSString * hexStr = [NSString stringWithFormat:@"%@",
[NSData dataWithBytes:[str cStringUsingEncoding:NSUTF8StringEncoding]
length:strlen([str cStringUsingEncoding:NSUTF8StringEncoding])]];
for(NSString * toRemove in [NSArray arrayWithObjects:@"<", @">", @" ", nil])
hexStr = [hexStr stringByReplacingOccurrencesOfString:toRemove withString:@""];
NSLog(@"%@", hexStr);
应该提供类似
的输出 48656c6c6f20576f726c64
优化这个是留给读者的练习:):)