Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/iphone/42.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
iPhone-减少文件管理器访问_Iphone_Cocoa_Nsfilemanager - Fatal编程技术网

iPhone-减少文件管理器访问

iPhone-减少文件管理器访问,iphone,cocoa,nsfilemanager,Iphone,Cocoa,Nsfilemanager,我有一个删除文件的方法。实际上我有这个 NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES); NSString *documentsDirectory = [paths objectAtIndex:0]; NSString *appFile = [documentsDirectory stringByAppendingPathComponent:myFil

我有一个删除文件的方法。实际上我有这个

NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
NSString *documentsDirectory = [paths objectAtIndex:0];
NSString *appFile = [documentsDirectory stringByAppendingPathComponent:myFile];

NSFileManager *fileManager = [NSFileManager defaultManager];


if ([fileManager fileExistsAtPath:appFile]) { //I am thinking about removing this line
    [fileManager removeItemAtPath:appFile error:nil];   
}
当我试图将文件管理器的访问权限减少到最低限度时,我考虑在删除文件之前删除检查文件是否存在的行。安全吗?我是不是冒着撞车的危险

我已经测试过了,没有撞车,但谁知道。。。
谢谢

是的,您可以删除该文件是否存在的检查,而不会出现问题。您通常会检查removeItemAtPath的返回值是否为YES/NO。如果文件不存在,它将返回NO。此时,您通常会检查NSError对象以了解详细信息。

是的,您可以取消检查以确保文件不存在问题。您通常会检查removeItemAtPath的返回值是否为YES/NO。如果文件不存在,它将返回NO。此时,您通常会检查NSError对象以了解详细信息。

检查是无意义的,因为文件可能会被另一个线程或进程在“exists”和“remove”调用之间删除。检查是无意义的,因为文件可能会被另一个线程或进程在“exists”和“remove”调用之间删除。