来自[NSData dataWithContentsOfURL:]的NSString

时间:2012-01-25 15:00:16

标签: iphone objective-c xcode nsdata

对此可能有一个非常简单的答案,但我似乎无法指责它。

我正在使用(见下文)

获取网址的内容
NSData *data = [NSData dataWithContentsOfURL:webURL];

我想要做的是以可读的形式显示此NSData,而不是十六进制表示。

4 个答案:

答案 0 :(得分:7)

这也是另一种方式,完全绕过NSData的使用:

NSError *error = nil;
NSString *string = [NSString stringWithContentsOfURL:webURL encoding:NSUTF8StringEncoding error:&error];

答案 1 :(得分:3)

NSString* newStr = [[NSString alloc] initWithData:data
                                         encoding:NSUTF8StringEncoding];

答案 2 :(得分:1)

如果这只是用于显示/记录,并且您不需要程序中的字符串,则还可以设置断点(单击要记录的行中的行号)。

然后右键单击刚刚创建的断点 - > 编辑断点 - > 点击添加操作。将下拉列表设置为调试器命令,然后在操作文本字段中输入x/10s (char*)[data bytes]。这会将10个“段”的数据写入日志。选中自动继续... 复选框,以便断点不会暂停程序。

NSData logging breakpoint in Xcode4

答案 3 :(得分:0)

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