ios writetofile 在真机中失败原因
2014-04-18 09:18
267 查看
You can't edit files in your main bundle. You have to first save the file to the applications documents folder then make any changes.
不能直接操作 mainbundle 主目录 ,你要存的东西应该放到 document 文件夹中 ,或者library文件夹中.
因为应用是在沙箱(sandbox)中的,在文件读写权限上受到限制,只能在几个目录下读写文件:[/u]
Documents:应用中用户数据可以放在这里,iTunes备份和恢复的时候会包括此目录[/u]
tmp:存放临时文件,iTunes不会备份和恢复此目录,此目录下文件可能会在应用退出后删除[/u]
Library/Caches:存放缓存文件,iTunes不会备份此目录,此目录下文件不会在应用退出删除[/u]
Here's some code to maybe fix your issue:
First save the text to a directory you create:
不能直接操作 mainbundle 主目录 ,你要存的东西应该放到 document 文件夹中 ,或者library文件夹中.
因为应用是在沙箱(sandbox)中的,在文件读写权限上受到限制,只能在几个目录下读写文件:[/u]
Documents:应用中用户数据可以放在这里,iTunes备份和恢复的时候会包括此目录[/u]
tmp:存放临时文件,iTunes不会备份和恢复此目录,此目录下文件可能会在应用退出后删除[/u]
Library/Caches:存放缓存文件,iTunes不会备份此目录,此目录下文件不会在应用退出删除[/u]
Here's some code to maybe fix your issue:
First save the text to a directory you create:
NSString *myFilePath = [[NSBundle mainBundle] pathForResource:@"MyFile" ofType:@"txt"]; NSArray *paths = NSSearchPathForDirectoriesInDomains(NSLibraryDirectory, NSUserDomainMask, YES); NSString *directory = [NSString stringWithFormat:@"%@/Some_Directory", [paths objectAtIndex:0]]; // Check if the directory already exists if (![[NSFileManager defaultManager] fileExistsAtPath:directory]) { // Directory does not exist so create it [[NSFileManager defaultManager] createDirectoryAtPath:directory withIntermediateDirectories:YES attributes:nil error:nil]; } NSData *data = [[NSData dataWithContentsOfFile:myFilePath] retain]; NSString *filePath = [[directory stringByAppendingPathComponent:[NSString stringWithFormat:@"%@", [myFilePath lastPathComponent]]] retain]; NSError *error = nil; if (![data writeToFile:filePath options:NSDataWritingFileProtectionNone error:&error]) { [data writeToFile:filePath atomically:NO]; } [data release]; [filePath release];
相关文章推荐
- ios 调用writeToFile将图片保存到本地一直失败的解决方案
- 解决NSArray和NSDictionary中含有null时 writeToFile 失败的问题
- iOS WriteToFile的使用
- 06 - writeToFile写入不成功/无法写入的原因
- NSDictionary、NSArray调用writeToFile:atomically:失败
- iOS: NSData的方法writeToFile:atomically:
- ios writeToFile 和 对象序列化
- iOS:NSData的方法writeToFile:options:error:
- iOS-数据持久化存储(plist文件和writeToFile的使用)
- iOS install failed 真机调试安装失败原因总结(持续更新)
- NSDictionary writeToFile:atomically: 时失败
- iOS writeToFile crash
- writeToFile写入不成功的原因
- IOS开发中使用writeToFile时的注意事项
- IOS 开发之数据存储writeToFile的应用实例
- writeToFile写入不成功的原因
- NSDictionary writeToFile:atomically: 时失败
- writeToFile 失败
- ios之应用数据存储五:writeToFile