如何将文件加载到Iphone文件目录中?

时间:2010-03-11 01:49:44

标签: iphone documents

我有几个大文件要加载到应用程序文档文件夹中,然后根据需要从那里调用。

我看到的建议是将它们放在resources文件夹中,然后在应用程序加载时将它们复制到documents文件夹中。我假设如果我这样做,这些大文件将在应用程序启动时加载到内存中然后停留在那里......

安装应用程序时,有没有办法让这些文件直接进入文档文件夹,只有在被调用时才会加载到内存中?

...谢谢

2 个答案:

答案 0 :(得分:0)

安装时无法自动执行此操作。

您可以使用NSFileManager来复制文件。

NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES); 
NSString *documentsDirectory = [paths objectAtIndex:0];
NSString *finalPath = [documentsDirectory stringByAppendingPathComponent:@"documentName"];
[[NSFileManager defaultManager] copyItemAtPath:yourDocumentPath toPath:finalPath error:nil];

答案 1 :(得分:0)

取决于文件最初所在的位置。如果在你的包中,那么使用NSFileManager,就像gcamp所说的那样。如果您从'Net下载它们,或者动态生成它们,请使用NSOutputStream - 这是用于将二进制或文本数据从内存写入文件的API。或者使用POSIX open()/ write(),旧学校。