我想把一些数据写到文件里。我能够从文件对话框中获得一个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 *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也是零。
有什么线索吗?
发布于 2016-05-05 02:22:09
请参阅NSFileHandle fileHandleForWritingToURL:error:的文档。如果文件不存在,您将返回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];https://stackoverflow.com/questions/37041198
复制相似问题