Objective c 来自NSURL失败的NSFileHandle
我正试图把一些数据写入一个文件。我能够从文件对话框中获取NSURL,并且获取的NSURL具有以下值Objective c 来自NSURL失败的NSFileHandle,objective-c,macos,cocoa,Objective C,Macos,Cocoa,我正试图把一些数据写入一个文件。我能够从文件对话框中获取NSURL,并且获取的NSURL具有以下值 file:///Users/brad/Documents/2016-05-04-06-53-35.csv 我的代码执行以下操作: NSURL* myFile = [panel URL]; // is file:///Users/brad/Documents/2016-05-04-06-53-35.csv NSError *error = nil; NSFileHandle *m
file:///Users/brad/Documents/2016-05-04-06-53-35.csv
我的代码执行以下操作:
NSURL* myFile = [panel URL]; // is file:///Users/brad/Documents/2016-05-04-06-53-35.csv
NSError *error = nil;
NSFileHandle *myFileHandle = [NSFileHandle fileHandleForWritingToURL:myFile error:&error];
NSLog(@"%@",error);
if (myFileHandle)
{
... // do something
}
else
{
NSLog(@"File operation failed");
}
我得到了一个错误,表明如下
Error Domain=NSCocoaErrorDomain Code=2 "(null)" UserInfo={NSFilePath=/Users/brad/Documents/
另外,myFileHandle是nil
有什么线索吗 请参阅
nsfilehandlefilehandleforwritingtour的文档:错误:
。如果文件不存在,则返回nil
使用NSFileManager
首先检查文件是否存在。如果没有,请使用NSFileManager createFileAtPath:contents:attributes:
创建一个空文件
NSURL *myFile = [panel URL];
if (![[NSFileManager defaultManager] fileExistsAtPath:[myFile path]]) {
[[NSFileManager defaultManager] createFileAtPath:[myFile path] contents:[NSData data] attributes:nil];
}
NSError *error = nil;
NSFileHandle *myFileHandle = [NSFileHandle fileHandleForWritingToURL:myFile error:&error];