从xml读取键/值对列表到Array或List的最快方法是什么

时间:2012-05-10 21:04:02

标签: java android xml

我有一个XML / Xcode plist文件。

<array>
<dict>
  <key>notes</key>
     <array>
        <string>C3</string>
        <string>C3</string>
        <string>D3♭</string>
        <string>F4</string>
     </array>
     <key>tuneName</key>
        <string>My Melody</string>
   </dict>
  <dict>
     <key>notes</key>
     <array>
        <string>C</string>
        <string>A</string>
        <string>G</string>
        <string>F4</string>
     </array>
     <key>tuneName</key>
        <string>My Other Melody</string>
   </dict>
</array>

在Objective-C中,它就像NSMutableArray *defaultData = [[[NSMutableArray alloc]initWithContentsOfFile:pathToDefaultPlist] autorelease];

一样简单

并保存:[defaultData writeToFile:pathToDefaultPlist atomically:NO];

这将自动创建一个带有字典子对象的可变数组,其对象又可以是数组。

有一种简单的方法可以在Java中执行此操作,还是我必须自己解析文件?此外,Java中的NSMutableDictionary等效类型是什么?

1 个答案:

答案 0 :(得分:0)

我认为你不能在资源文件中创建哈希,你只能创建数组。

然后,最好的方法是创建一个字符串数组资源,在加载它们时需要解析它们的值。

E.g。

<string-array name="my_hash_hack">
   <item>"KEY1:VALUE1,VALUE2,VALUE3"</item>
   <item>"KEY2:VALUE1,VALUE2,VALUE3"</item>
</string-array>

我确信还有其他方法可以达到同样的目的,但这会给你一般的想法。