将NSData写入文件?

ary*_*axt 8 cocoa objective-c nsdata

我试图写一个nsdata到我的磁盘上的文件,我有以下代码,它不起作用,我做错了什么?

Boolean result = [data writeToFile:@"/Users/aryaxt/Desktop/test2.avi" atomically:YES];
Run Code Online (Sandbox Code Playgroud)

test2.avi不存在,我假设writeToFile会为我创建它

Joh*_*lin 32

尝试使用:

NSError *error = nil;
path=@"/Users/aryaxt/Desktop/test2.avi";
[data writeToFile:path options:NSDataWritingAtomic error:&error];
NSLog(@"Write returned error: %@", [error localizedDescription]);
Run Code Online (Sandbox Code Playgroud)

那会告诉你写入失败的原因.

  • 只有在方法返回"NO"时才应检查`error`.基础类可能会在error参数中放入其他对象或假错误甚至垃圾.(这并不是说他们*做*,但它是程序员合同的一部分,他们可以,所以要小心.) (10认同)