我是iOS编程的新手,我正在尝试将NSData对象的文本表示形式作为NSString
例如,如果NSData对象是:
<07010013 01020000 09000100 000199c2>
我想将其转换为:
"070100130102000009000100000199c2"
我该怎么做?
答案 0 :(得分:0)
提示#1 // 一般答案
NSString
为此提供了初始化程序。您可以看到more info using the docs here.
NSString * str = [[NSString alloc] initWithData: mynsdata
encoding:NSUTF8StringEncoding];
假设您使用ARC。
提示#2 // 十六进制nsdata的答案
int len = [mynsdata length];
NSMutableString *str = [NSMutableString stringWithCapacity:len*2];
const unsigned char *nsdata_bytes = [mynsdata bytes];
for (int i = 0; i < len; ++i) {
[str appendFormat:@"%02x", nsdata_bytes[i]];
}