2013-04-25 60 views
8

我有一个从电子邮件附件导入文件的iOS应用程序。 我注意到,一旦我完成它它将导入的文件放入文档/收件箱。您是否需要从文件/收件箱中删除导入的文件?

我的应用程序应该删除这些文件还是操作系统最终得到清除它们?

如果是这样,怎么样?我已经试过:

[[NSFileManager defaultManager] removeItemAtPath:[self.url path] error:nil]; 

但是似乎引用文件中的收件箱中,即使self.url是我的导入文件的正确路径不。

回答

9

系统不会清除导入的文件,所以您应该在需要时手动清除它们,但不要删除Documents目录。

如何清除NSDocumentsDirectory你可以找到here

如果你想从收件箱中删除的文件使用相同的代码添加

... 
NSString *path = [NSString stringWithFormat:@"%@/Inbox", documentsDirectory ]; 
NSArray *directoryContents = [fileMgr contentsOfDirectoryAtPath:error:&error]; 
... 

阅读reference

从苹果DOC :

使用此目录访问您的应用程序被要求通过 外部实体打开的文件。具体来说,邮件程序会将与您的应用程序关联的电子邮件附件放置在此目录中;文档 交互控制器也可能在其中放置文件。

您的应用程序可以读取和删除此目录中的文件,但无法创建新文件或写入现有文件。如果用户尝试在此目录中编辑 文件,则在进行任何更改之前,您的应用程序必须以静默方式将其移出 目录。

此目录的内容由iTunes备份。

+0

这不会清除收件箱。此收件箱文件夹似乎是一个特殊的文件夹。它由系统创建,而不是我的应用程序。我无法使用此方法删除它。 – ngb 2013-04-25 12:57:06

+0

看看我的更新 – 2013-04-25 13:07:58

+0

这是正确的,但我已更正了代码并完成了它。谢谢! – ngb 2013-04-26 05:21:46

相关问题