-5

我是 iOS 编程新手,我正在尝试将 NSData 对象的文本表示形式作为 NSString

例如,如果 NSData 对象是:

<07010013 01020000 09000100 000199c2>

我想将其转换为:

"070100130102000009000100000199c2"

我怎样才能做到这一点?

4

1 回答 1

0

HINT#1 //一般答案

NSString为此目的提供了一个初始化程序。您可以使用此处的文档查看更多信息。

NSString * str = [[NSString alloc] initWithData: mynsdata 
                                      encoding:NSUTF8StringEncoding];

假设您使用 ARC。

HINT#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]];
}
于 2013-09-28T11:09:05.883 回答