如果我有一个以plist结构形式从Web服务返回的NSString,如何使用此NSString初始化NSMutableArray。我想知道是否有类似于initSithContentsOfFile的NSString方法。
我的第一个想法是将NSString保存到文件中,然后使用initWithContentsOfFile;但我试图避免先保存到文件。似乎应该有一种更简单的方法。
答案 0 :(得分:1)
请参阅“属性列表编程指南”“Reading and Writing Property-List Data”。它介绍了如何将NSData
转换为属性列表。如果您已从网络中获得NSData
,则不要将其转换为NSString
。如果您只有NSString
,请使用dataUsingEncoding:
将其转换为NSData
。
答案 1 :(得分:1)
查看-propertyList
和-mutableCopy
方法的文档。
答案 2 :(得分:1)
未经测试,应该这样工作:
NSData *data = [myString dataUsingEncoding:NSUTF8StringEncoding];
NSMuableArray *array = [NSPropertyListSerialization
propertyListWithData:data
options:NSPropertyListMutableContainers
format:NSPropertyListXMLFormat_v1_0
error:NULL];
答案 3 :(得分:0)
您可以使用NSXMLParser来解析XML(这是一个plist)并将其转换为字典(并从那里检索数组)