iphone - writeToFile 在模拟器上工作,但在设备上不工作

标签 iphone ios-simulator plist

我有一个正在更改的 plist:

NSString *finalPath = [path stringByAppendingPathComponent:@"KeyFrameFileByMovie.plist"];
NSMutableDictionary *keyFrameFileByMovie = [[NSMutableDictionary alloc] initWithContentsOfFile:finalPath];
[keyFrameFileByMovie setValue:keyFrameName forKey:movieName];
BOOL isOk = [keyFrameFileByMovie writeToFile:finalPath atomically:YES];

在模拟器上isOk是1 设备上的 isOK 为 0

我不认为这是一个区分大小写的问题,因为我有一个有效的获取代码:

NSString *finalPath = [path stringByAppendingPathComponent:@"KeyFrameFileByMovie.plist"];<br>
NSDictionary *plistData =[[NSDictionary dictionaryWithContentsOfFile:finalPath] retain];

为什么 writeToFile 在设备上失败?

最佳答案

iPhone应用程序有非常严格的目录结构。不幸的是,设备与模拟器上的权限是不同的。因此,这里唯一的问题可能是您没有保存在 Documents 目录中,而是保存在 MainBundle 目录中。

在上面的例子中,路径值是多少?

关于iphone - writeToFile 在模拟器上工作,但在设备上不工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2010192/

相关文章:

ios - 如何在iOS模拟器中测试强制触摸窥视和弹出?

xml - 核心文本。将文本布局信息输入到基于 CoreText 的应用程序的最佳方法是什么?

ios - 根据目标加载不同的 plist

iphone - 如何在 appdelegate 中获取指向 viewcontroller 对象的指针

iphone - 图像旋转到左侧90度电子邮件附件iPhone

ios - 使用前置摄像头进行手势检测

ios - 呈现 View Controller 时出现奇怪的错误

iPhone 模拟器不显示启动画面

ios - 如何构建用于 Facebook 提交的应用程序

ios - 如何将 plist 注册到 NSUserDefaults?