2011-06-30 40 views
0

我正在使用Xcode 4,我希望我的iPhone 4应用程序每次运行测试时都会在文件中附加一行。有没有快速的方法来做到这一点?如果是这样,我准确地在iphone目录层次结构中写入了什么?如何追加到Xcode 4中的文件以及文件应放在哪里?

谢谢。

+0

你是否需要阅读本的数据?我打算建议像归档数组这样的东西,但这只会不断增长,并且最终加载一个新的条目可能会占用很少的内存。 – Katfish

回答

4

您不能在iPhone应用程序包内写入内容,因为这会破坏加密。您可以在Documents目录中或在<apphome>/Library下的某处写入。如果您添加UIFileSharingEnabledInfo.plist,这是对应用程序的私人文件,下Library是更好的添加文件

由于Documents可能成为iTunes的用户可见。在测试过程中并不重要。 Apple相关文档:Technical Q&A QA1699: Storing Private DataA Few Important Application Directories

您可以使用此代码在iPhone应用程序将文本追加到一个文件:

// get path to Documents/somefile.txt 
NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES); 
NSString *documentsDirectory = [paths objectAtIndex:0]; 
NSString *path = [documentsDirectory stringByAppendingPathComponent:@"somefile.txt"]; 

// create if needed 
if (![[NSFileManager defaultManager] fileExistsAtPath:path]){ 
    [[NSData data] writeToFile:path atomically:YES]; 
} 

// append 
NSFileHandle *handle = [NSFileHandle fileHandleForWritingAtPath:path]; 
[handle truncateFileAtOffset:[handle seekToEndOfFile]]; 
[handle writeData:[@"line of text\n" dataUsingEncoding:NSUTF8StringEncoding]]; 
相关问题