我测试了这段代码,但它导致了SIGABRT错误。
NSArray *array = [NSKeyedUnarchiver unarchiveObjectWithData:data]
NSData是xml格式的plist数据。这段代码工作正常。
[urlData writeToFile:[self docPath] atomically:YES];
array = [[NSMutableArray alloc] initWithContentsOfFile:[self docPath]];
如何在没有文件转换的情况下将NSData更改为NSArray?
答案 0 :(得分:7)
这假设您已使用已保存数据文件的文件路径填充NSString *filepath
。
NSPropertyListFormat format;
NSData *dataFromFile = [NSData dataWithContentsOfFile:fileNameWithPath];
NSArray *arrayFromFile = nil;
if (dataFromFile) {
arrayFromFile = [NSPropertyListSerialization propertyListFromData:dataFromFile
mutabilityOption:NSPropertyListMutableContainers
format:&format
errorDescription:NULL];
}
希望有帮助...