【发布时间】:2012-01-06 16:39:33
【问题描述】:
我有一个几乎完成的应用程序,最后一部分是我通过电子邮件将收集的数据发送给受访者。我知道如果我在我的包中使用一个文件,我不能写入它,因为它将是只读的。我还可以将文件保存到哪里,然后可以使用该路径作为电子邮件附件?
【问题讨论】:
我有一个几乎完成的应用程序,最后一部分是我通过电子邮件将收集的数据发送给受访者。我知道如果我在我的包中使用一个文件,我不能写入它,因为它将是只读的。我还可以将文件保存到哪里,然后可以使用该路径作为电子邮件附件?
【问题讨论】:
您只能写入应用程序的沙盒文档目录。试试这个:
NSArray *documentsPaths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
NSString *documentsDir = [documentsPaths objectAtIndex:0];
documentsDir 以字符串形式为您提供应用程序文档目录的完整路径。
然后您可以使用- (BOOL)writeToFile:(NSString *)path atomically:(BOOL)flag 或
- (BOOL)writeToFile:(NSString *)path options:(NSDataWritingOptions)mask error:(NSError **)errorPtr
将您的数据写入该位置。
【讨论】:
您可以将文件保存在DocumentDirectory...中,可通过以下代码访问
NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
NSString *documentsDirectory = [paths objectAtIndex:0];
NSString *fullPath = [documentsDirectory stringByAppendingPathComponent:[NSString stringWithFormat:@"%@.abc", @"userdata"]];
详情请参阅:iphone: How to add Email functionality in iPhone Ebook App
【讨论】: