我有这个代码在iphone的目录中创建一个文本文件:
NSArray *paths = NSSearchPathForDirectoriesInDomains
(NSDocumentDirectory, NSUserDomainMask, YES);
NSString *documentsDirectory = [paths objectAtIndex:0];
NSString *fileName = [NSString stringWithFormat:@"%@/file.txt",
documentsDirectory];
NSString *content = @"my first text";
NSError *error;
if ([[NSFileManager defaultManager] fileExistsAtPath:fileName] == NO) {
[content writeToFile:fileName
atomically:YES
encoding:NSStringEncodingConversionAllowLossy
error:&error];
}else{
[content writeToFile:fileName
atomically:YES
encoding:NSStringEncodingConversionAllowLossy
error:&error];
}
代码工作正常,直到某个时间它不再起作用,并返回以下错误:
错误域= NSCocoaErrorDomain代码= 517“操作无法执行 完成。 (可可错误517.)“UserInfo = 0x8c852b0 {NSFilePath = / Users / williamlima / Library / Application Support / iPhone 模拟器/ 7.1 /应用/ B5781B9E-3915-4656-83D4-5E0FB6486567 /文档/ file.txt的, NSStringEncoding = 1}
我如何解决这个问题?
答案 0 :(得分:5)
您可以尝试使用UTF8Encoding
[content writeToFile:fileName
atomically:YES
encoding: NSUTF8StringEncoding
error:&error];
答案 1 :(得分:0)
我的两分钱
Ozgur修复程序在Xcode 10中使用objC在Mojave 10.4中工作,解决了错误。