iphone - 有没有一种简单的方法可以按键值对 plist(字典数组)进行排序?

标签 iphone cocoa sorting plist nsdictionary

我需要按键值对 plist(字典数组)重新排序。

在此示例内容中,我想按键名称(Matt、Joe)的值进行排序:

<dict>
    <key>Name</key>
    <string>Matt</string>
    <key>Details</key>
    <string>Me</string>
</dict>
<dict>
    <key>Name</key>
    <string>Joe</string>
    <key>Details</key>
    <string>You</string>
</dict>

有简单的方法吗?我不想每次运行应用程序时都在代码中执行此操作,我只想对数据文件执行此操作。

有什么想法吗?

很高兴使用任何工具来完成此任务:用于在命令行上排序的 ninja 参数、plist 编辑器、文本编辑器或其他任何工具。

最佳答案

这是另一种编码解决方案,但制作一个围绕它的基本命令行工具并不难:

NSArray* arrayOfDictionaries; //the array we want to sort
NSSortDescriptor* nameSortDescriptor = [[NSSortDescriptor alloc] initWithKey:@"Name" ascending:YES];
NSArray* sortedArray = [arrayOfDictionaries sortedArrayUsingDescriptors:[NSArray arrayWithObject:nameSortDescriptor]];
[nameSortDescriptor release];

关于iphone - 有没有一种简单的方法可以按键值对 plist(字典数组)进行排序?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/864412/

相关文章:

objective-c - NSSlider 多次撤销注册

python - 添加键的值并根据键在 Python 字典列表中的出现对其进行排序

python - 通过拆分键对字典进行排序

ios - 如何将本 map 片同步到网络服务器?这样我就可以在整个设备上看到它们

file - Cocoa 沙箱 - 重新启动应用程序时重新打开文件

iphone - 在 iOS 中使用图像蒙版动画填充圆形进度表

macos - 禁止入袋 - cocoa

java - 如何对包含 int+string 条目的数组列表进行数字排序

iphone - 我在哪里可以找到 Core Data 对多关系的一个很好的例子?

javascript - 在 Safari/iPhone 上更改框架大小