将数据写入文件而不删除iPhone中的旧内容

时间:2011-09-11 07:43:33

标签: iphone file

我想将数据写入.txt文件而不替换其旧内容。我已将文件从NSMainBundle移动到文档目录。我可以使用代码编写该文件

NSData *data=[NSKeyedArchiver archivedDataWithRootObject:recentMainArray];
NSFileHandle *myHandle = [NSFileHandle fileHandleForUpdatingAtPath:filePath];
[myHandle seekToEndOfFile];
[myHandle writeData:data];
[myHandle closeFile];

但是当我尝试显示文件的内容时,我没有任何数据。文件也存在于该路径中。这是我用来显示内容的以下代码。

NSFileManager *manager = [NSFileManager defaultManager];
  

// filePath - >文档目录文件路径

if([manager fileExistsAtPath:filePath]) {

        NSMutableArray *savedArray = [[NSMutableArray alloc] initWithContentsOfFile:filePath];
        NSMutableArray *storedRecentID = [savedArray objectAtIndex:0];
        NSMutableArray *storedRecentName = [savedArray objectAtIndex:1];
        NSLog(@"ID:%@",[savedArray objectAtIndex:0]);
        NSLog(@"Name:%@",[savedArray objectAtIndex:1]);

} 
else {
        NSLog(@"file not found, save something to create the file");
}

“null”,作为这两个nslog的结果打印出来。

请有人让我知道这个问题的解决方案.FYI,我正在使用模拟器进行测试,这是一个问题。请给我一个解决方案。我搜索了很多,我无法找到解决方案

提前谢谢大家

1 个答案:

答案 0 :(得分:2)

将数据读入一些Mutable结构(字典,数组,字符串),然后将新数据附加到相同的satring中。现在将数据写入相同的路径。因此新的附加数据将写入文件中。