iOS从XML文件中获取随机条目

时间:2014-09-29 14:28:24

标签: ios xml json

我正在努力展示我所拥有的KJV XML文件中的随机圣经经文,但我对XML的格式存在一些问题,因为它本身内部有很多数组。它的格式如下:

<?xml version="1.0"?>
<bible translation="King James Version">
    <testament name="Old">
        <book name="Genesis">
            <chapter number="1">
                <verse number="1">
                </verse>
            </chapter>
        </book>
     </testament>
 </bible>

我已经尝试将此转换为plist文件以更好地处理它,但我也遇到了问题。我使用在线程序将其转换为JSON文件,但是当从终端使用plutil转换为plist文件时,我收到以下错误:

Unexpected character { at line 1 / JSON error: No string key for value in object around character 1.

对于前几行,JSON格式如下所示:

{
  "bible": {
    "-translation": "King James Version",
    "testament": [
      {
        "-name": "Old",
        "book": [
          {
            "-name": "Genesis",
            "chapter": [
              {
                "-number": "1",
                "verse": [
                  {
                    "-number": "1",
                    "#text": "In the beginning God created the heaven and the earth."
                  },

我很感激任何建议,无论是将其转换为plist文件,还是使其适用于XML。

1 个答案:

答案 0 :(得分:0)

如果使用第三方库是没有问题:

使用xml解析器将传入的xml解析为字典。

即。 https://github.com/nicklockwood/XMLDictionary

使用此lib加载XML文件的最简单方法如下:

NSString *filePath = [[NSBundle mainBundle] pathForResource:@"someFile" ofType:@"xml"];
NSDictionary *xmlDoc = [NSDictionary dictionaryWithXMLFile:filePath];

同时转换为字典将为您提供抓取所需随机数据的优势。

我希望这会有所帮助。