objective-c - iOS:将两个 NSMutableArray 存储在一个 .plist 文件中

标签 objective-c xcode ios nsmutablearray plist

我想在 AppDelegate 中存储两个用作全局数组的 NSMutableArray。这两个数组也存储在 NSUserDefaults 中。现在我想知道我必须如何创建这个文件以及每次修改它们时如何存储这两个数组。你能帮帮我吗?

最佳答案

  1. 创建一个包含您的两个 NSMutableArray 的 NSArray。

    NSArray *array = [NSArray arrayWithObjects:<#(id), ...#>, nil];
    
  2. 将数组写入文件。

    NSArray *paths = NSSearchPathForDirectoriesInDomains(NSLibraryDirectory, NSUserDomainMask, YES);
    NSString *libraryDirectory = [paths objectAtIndex:0];
    NSString *location = [libraryDirectory stringByAppendingString:@"/somefilename.plist"];
    [array writeToFile:location atomically:YES];
    
  3. 从文件中加载数组。

    NSString *path = [bundle pathForResource:@"file" ofType:@"plist"];
    NSArry *array = (path != nil ? [NSArray arrayWithContentsOfFile:location] : nil);
    

关于objective-c - iOS:将两个 NSMutableArray 存储在一个 .plist 文件中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6070568/

相关文章:

objective-c - 查看 Pages Mac OS X 应用程序使用的层次结构

objective-c - 在 cocoa 中读取、修改、写入xml文件

C++ - NSObjCRuntime 和 NSZone 中的许多解析问题

iphone - 在两台 Mac 上开发 iOS 应用程序?

iphone - 在 XCode 上找不到基于窗口的应用程序

ios - iOS 8 中的 SevenSwitch UI 背景颜色

ios - 使用 GPUImage 查找棋盘角点

ios - 图像不是第一次加载到 iOS 10 的 tableview 中,而是滚动后?

objective-c - 如何使用 iCloud 存储和同步应用程序文件

iphone - 如何在icalender的ekevent中设置事件持续时间?