是否可以将NSMutableArray或NSDictionary数据保存为iOS中的文件?

RAG*_*poR 19 cocoa-touch nsdictionary nsmutablearray nsdata ios

我想保存NSMutableArrayNSDictionary作为永久文件.然后,我想稍后重新打开该文件.

这可能吗?如果是这样,我该怎么办?

tas*_*oor 51

写入文件

NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
NSString *documentsDirectory = [paths objectAtIndex:0];
NSString *filePath = [documentsDirectory stringByAppendingPathComponent:FILE_NAME];

[myArray writeToFile:filePath atomically:YES];

从文件中读取

NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
NSString *documentsDirectory = [paths objectAtIndex:0];
NSString *filePath = [documentsDirectory stringByAppendingPathComponent:FILE_NAME];

myArray = [NSArray arrayWithContentsOfFile:filePath];

如果文件不存在,myArray将为nil.NSDictionary有类似的方法.请查看参考资料以了解这些方法的详细信息.

  • @gef,TRUE/FALSE和YES/NO之间有什么实际区别吗? (4认同)
  • @taskinoor嗨,应该如何格式化`FILE_NAME`?你能给我一个例子,可以使用哪个文件名. (2认同)