【发布时间】:2014-04-15 12:52:09
【问题描述】:
我将 UITextView 文本保存到文件 test.txt 中
NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
NSString *documentsDirectory = [paths objectAtIndex:0];
NSString *path = [documentsDirectory stringByAppendingPathComponent:@"test.txt"];
[self.textBox.text writeToFile:path atomically:YES];
NSLog(path);
这在模拟器中的 mac 上运行良好,因为它提供了一个库,我只需单击它即可打开 txt 文件。但是,在 iPad 上,我不知道该怎么做。
/var/mobile/Applications/10AC319A-D567-4DC6-B7C9-E53E71B82B89/Documents/test.txt
是我存储的地方。我猜是无法通过 ipad 访问文档文件夹?
如何在应用程序中提取此文档?或者将其保存在应用程序中,以便应用程序的用户可以访问它?
除了保存按钮之外,我还有另一个名为 Read 的按钮应该以某种方式拉出 test.txt
我已经开始了
-(IBAction)readAssignment:(id)sender{
NSString* GetApplicationDocumentsDirectory(); {
static NSString* documentsDirectory = nil;
if (documentsDirectory == nil) {
documentsDirectory = [[NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES) objectAtIndex:0] stringByAppendingPathComponent:@"test.txt"];}
self.textBox.text= [documentsDirectory stringByAppendingPathComponent:@"text.txt"];
}
}
self.textBox.text= [documentsDirectory stringByAppendingPathComponent:@"text.txt"];
返回文件路径,但我如何获取它以显示保存到 textview 中的 text.txt 文本?
但我知道这行不通/不正确。
【问题讨论】:
-
在设备上运行时究竟出了什么问题?
-
@JoshCaswell 当我在 Mac 上运行时,它会创建一个文件夹 /Users/vchang/Library/Application Support/iPhone Simulator/Documents/test.txt 我可以访问它。但是,当我在设备上运行它时,我不确定在哪里可以访问创建的文档 test.txt。我希望用户以后能够调出保存的文档
-
您是指在应用程序之外?每个 iOS 应用程序都有自己的 Documents 目录;其他应用无法访问。
-
嗯,我如何访问该目录或在应用程序中提取 test.txt?我知道它可以保存它,但我不确定如何在应用程序中将其拉起...我创建了一个应该执行此操作的新按钮,我将添加该部分,但我知道我错了。
-
只需在您写入的相同路径中读取它:
[[NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask) objectAtIndex:0] stringByAppendingPathComponent:@"test.txt"];
标签: ios writetofile nsdocumentdirectory