这里我有将NSMutableString保存到File(FileName.dat)
的演示代码NSError* error = nil;
NSMutableString* dat = [[NSMutableString alloc] initWithCapacity:1];
BOOL result = [dat writeToFile:@"FileName.dat" atomically:YES encoding:NSUTF8StringEncoding error:&error];
但我在iOS7和iOS8beta5中输出了两个不同的输出
输出XCode5 + iOS7
输出XCode5 + iOS8
<小时/> 虽然
running it in iOS7
显示error in parsing file path
,
但在iOS8beta5 it
崩溃时说[NSFileManager fileSystemRepresentationWithPath:] have nil or empty path
。
答案 0 :(得分:2)
您传递给[NSData writeToFile:atomically:]
的路径不完整,应该是完整路径。
通常通过获取Documents
文件夹的路径并附加该文件名来完成。
答案 1 :(得分:2)
问题是您的文件名@"FileName.dat"
,没有要保存的目录的路径。 NSFileManager
本身不会这样做,您需要正常保存到Documents
文件夹。这是我经常使用的代码:
[NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES)[0] stringByAppendingPathComponent:myFileName];