【发布时间】:2011-03-25 07:20:39
【问题描述】:
我正在使用文本文件将用户所做的更改保存在列表中(我这样做的原因是为了以后可以将文本文件上传到 PC,然后从那里插入到 Excel 电子表格中)。我有 3 个数据结构:一个 NSMutableArray 键和一个 NSMutableDictionary,其键值是 NSStrings 的 MSMutableArrays。
我遍历这些数据结构并编译一个看起来很像这样的文件字符串:
(Key);(value)\t(value)\t(value):\n(Key);(value).. .so on.
所以,关于实际问题:当我尝试保存它时,它失败了。我 99% 确定这是因为我正在使用的文件路径,但我希望通过备份来检查这一点。代码如下:
NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory,NSUserDomainMask, YES);
NSString *filePath = [paths objectAtIndex:0];
NSString *fileString = [NSString stringWithString:[self toFileString]];
if(![fileString writeToFile:filePath atomically:YES encoding:NSUTF8StringEncoding error:NULL]){
NSLog(@"File save failed");
} else {
// do stuff
}
(上面的代码是重新复制的,因为实际代码在不同的计算机上。它可以编译,所以忽略拼写错误?)
我尝试使用 NSError,但我陷入了文档的困境,并想我不妨在尝试弄清楚如何正确使用 NSError 时问 SO(可能有点傻,抱歉)。
99% 确定是 NSArray *paths 行出错了,但我不知道如何获取文档目录。
编辑:问题已解决,还有最后一个问题:如果我将它保存到应用程序的文档目录中,我在关闭应用程序后可以去哪里查看它是否正确保存?如果它像我认为的那样工作,它是不是在模拟器上安装应用程序时被沙盒化了? (即无法检查)
【问题讨论】:
-
如果您有第二个问题,请提出第二个问题!是的,写的文件会埋在~/Library/Application Support/iPhone Simulator/...
-
我不认为这是一个真正的大问题,而且它主要只是一个附加组件,以防在我在 Google 中找到答案之前有人回答了它。对不起。 ^^;;
标签: objective-c nsstring ipad