将文件保存在卸载后仍然存在的设备上

时间:2011-11-08 09:13:43

标签: objective-c ios cocoa-touch nsfilemanager file-management

我想在我的iPhone应用程序中保存一个.txt文件,但我希望它能够持续存在,即使卸载并重新安装该应用程序,我仍然可以访问它。

我试图将文件保存在iPhone的硬盘上,但它永远无法正常工作。

这适用于模拟器:

NSFileManager *filemgr;
filemgr = [NSFileManager defaultManager];


//NSString *dataFile= @"/Users/rajesh/Library/Application Support/iPhone Simulator/4.2/tmp/myfile.dat"; //on simulator
NSData *databuffer;
databuffer = [textBox.text dataUsingEncoding: NSASCIIStringEncoding];
[filemgr createFileAtPath: dataFile contents: databuffer attributes:nil];
[filemgr release];

我在设备上使用它:

NSString *dataFile= @"/var/mobile/Applications/temp/myfile.dat"; //on device

但它不起作用。

2 个答案:

答案 0 :(得分:1)

无法执行此操作,因为所有文件都位于沙盒中,沙盒是应用程序的一部分,您无法在沙箱之外编写文件。

您可以尝试将文件保存在钥匙串中(脏黑客)或通过iCloud存储。

答案 1 :(得分:0)

写入共享文件夹不能支持您的用例,因为iOS中没有此类工具。但是,您的高级目标(即使在删除并重新安装后也可以使用该应用程序的文件)可以使用iCloud进行维护,因此请查看通过iCloud同步文件。