iPhone App
我目前正在尝试了解如何将文件从URL存储到文档目录,然后从文档目录中读取文件。
NSURL *url = [NSURL URLWithString:@"http://some.website.com/file"];
NSData *data = [NSData dataWithContentsOfURL:url];
NSString *applicationDocumentsDir = [NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES) lastObject];
NSString *storePath = [applicationDocumentsDir stringByAppendingPathComponent:@"Timetable.ics"];
[data writeToFile:storePath atomically:TRUE];
我从http://swatiardeshna.blogspot.com/2010/06/how-to-save-file-to-iphone-documents.html
获得了此代码我想知道这是否是正确这样做的方法,我想知道如何加载文件目录中的文件到NSString ..
非常感谢任何帮助。
答案 0 :(得分:1)
你看起来是正确的,将该文件读回字符串使用:
编辑:(将usedEncoding更改为编码)
NSError *error = nil;
NSString *fileContents = [NSString stringWithContentsOfFile:storePath encoding:NSUTF8StringEncoding error:&error];
当然,如果使用特定的编码类型,则应更改字符串编码类型,但UTF8可能正确。
答案 1 :(得分:1)
如果你在你的主线程上这样做,那么不,它是不正确的。任何类型的网络连接都应该在后台完成,这样就不会锁定界面。为此,您可以创建新线程(NSThread
,performSelectorInBackground:
,NSOperation
+ NSOperationQueue
)或在运行循环(NSURLConnection
)上安排它。< / p>