我有这段代码......
NSData* myData = producedData;
NSLog(@"Contents of myData: %@", myData);
日志打印
{ “id”=“”; “level”=“level_1”; “处理”=测试; }
如何获取id和level的值并处理掉?原始数据是NSString *。
谢谢!
答案 0 :(得分:0)
是JSON吗?使用Stig Brautaset的JSON解析器http://code.google.com/p/json-framework/
答案 1 :(得分:0)
您没有显示实际获取数据对象的代码,也没有显示与NSString相关的任何代码。
您只是在为producedData
变量分配字符串(myData
)吗?那不会创建数据对象;首先,它不知道用什么编码将字符串的字符编码为字节,更重要的是,将指针从一个变量复制到另一个变量(这是myData = producedData
所做的 - 变量不包含对象本身,只指向它们的指针)不会改变指针所指向的内容。即使您告诉编译器myData
指向数据对象,该对象仍将是一个字符串。编译器应该警告你这件事;你应该注意并解决这些警告。
myData
绝对不是数据对象;如果是的话,它对自身的描述将是一个十六进制转储。它可以是字符串也可以是字典。
您显示的输出与NSDictionary用于描述自身的语法相匹配。另一方面,对象可以是包含这种描述的字符串。 (后一种情况是你所期待的。)
如果你有一本字典:你已经完成了!该对象已经被解析
如果你有一个字符串:发送一条propertyList
消息,它会将字符串解析为属性列表并返回其中表示的任何值,在这种情况下,它将是一个字典。