2016-12-05 28 views
0

在iOS中确定文件是否存在,然后删除可能存在或不存在的文件,并让错误在catch块中默默失败,这是不错的做法吗?FileManager.fileExistsAtPath FileManager.removeItem之前?

我遍历了大量的本地文件删除,其中大约10%可能不存在。

+0

我真的不知道。我的本能是在删除文件之前验证文件是否存在。我会建议您对大型文件集进行测试,您可以通过这两种方法对结果进行比较(模拟器测试对性能问题毫无价值。) –

回答

6

apple documentationfileExistsAtPath:方法:

试图谓词基于文件系统或文件系统中的特定文件的当前状态的行为是不推荐。这样做会造成奇怪的行为或竞赛状况。尝试一个操作(例如加载文件或创建目录),检查错误并妥善处理这些错误要比试图提前弄清操作是否成功要好得多。

+0

好的答案!我学到了东西。 (投票)。 –