写入文件目录Xcode中的plist

时间:2016-05-22 15:46:39

标签: uitableview ios7 plist nsdocumentdirectory

我有一个应用程序,我将一个plist从主程序包复制到我用来填充分段的UITableview的文档目录。这一切都运作良好。我想在用户输入时更改plist中的一些信息(节的标题名称)和(单元格的详细文本)。我还想添加其他部分,复制那里的部分,并在用户输入信息时输入信息。这是plist enter image description here

我已经找到了有关这方面的信息并尝试了各种各样的事情但似乎没有任何效果。有人可以告诉我如何更改标题字符串以及如何添加详细文本并添加包含标题和行的全新部分?

这是我用来尝试更新头文件而没有运气的代码

 NSArray *documentPaths15 = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
    NSString *documentsDirectory18 = [documentPaths15 objectAtIndex:0];
    NSString *path10 = [documentsDirectory18  stringByAppendingPathComponent:@"TableDataMainView.plist"];
    NSFileManager *fileManager = [NSFileManager defaultManager];

    NSMutableDictionary *data1;

    if ([fileManager fileExistsAtPath: path10])
    {
        data1 = [[NSMutableDictionary alloc] initWithContentsOfFile: path10];  // if file exist at path initialise your dictionary with its data
        NSLog(@"file exists");
    }
    else
    {
        // If the file doesn’t exist, create an empty dictionary
        data1 = [[NSMutableDictionary alloc] init];
        NSLog(@"file doesnt exist");
    }

    //To insert the data into the plist

    [data1 setObject:[NSString stringWithString:yourName] forKey:@"header"];
    [data1 writeToFile: path10 atomically:YES];

非常感谢任何帮助。

1 个答案:

答案 0 :(得分:0)

截至目前.. plist通常用于管理持久性数据存储索引文件。因此,您可以阅读一次并将其写回。但是你无法以编程方式创建新条目。如果数据是动态的,请使用核心数据实体。