从NSData转换为NSString后更改了字符串信息

时间:2014-01-15 17:47:15

标签: ios iphone nsstring afnetworking

我正在将从AFHTTPRequestOperation返回的NSData对象转换为NSString:

NSString *responseString = [[NSString alloc] initWithData:responseObject
                             encoding:NSUTF8StringEncoding];
NSLog(@"%@", responseString);

但我意识到responseObject中的信息已从

更改
<39306563 34636638 30353164 34303365 66346531 38643265 37393036 63333866>

90ec4cf8051d403ef4e18d2e7906c38f

请帮帮我......

1 个答案:

答案 0 :(得分:2)

数据没有变化,它们是同一数据的两种不同表示形式:十六进制和字符(ASCII)。

39306563 34636638 30353164 34303365 66346531 38643265 37393036 63333866
是数据的十六进制表示。

90ec4cf8051d403ef4e18d2e7906c38f
是字符串表示。

它们是相同的数据。

作为部分例子: 在十六进制示例中,每两个字符将一个字节表示为两个十六进制数字 在字符示例中,每个字符将一个字节表示为一个字符。

hex 39是字符9
十六进制30是字符0
十六进制65是字符e
十六进制63是字符c
...