菜鸟教程小白 发表于 2022-12-13 06:54:28

iphone - 在 iOS 中解析 JSON(再次)


                                            <p><p>我只是在 iOS 中使用 JSON 解析器,它作为一个(简单)示例运行良好。但我想知道如何真正解析(有点)更复杂的东西,Twitter 趋势 JSON,像这样:</p>

<pre><code>{
    &#34;trends&#34;: {
      &#34;2011-03-13 11:42:17&#34;: [
            {
                &#34;events&#34;: null,
                &#34;query&#34;: &#34;Fukushima&#34;,
                &#34;promoted_content&#34;: null,
                &#34;name&#34;: &#34;Fukushima&#34;
            },
            {
                &#34;events&#34;: null,
                &#34;query&#34;: &#34;Rebecca Black&#34;,
                &#34;promoted_content&#34;: null,
                &#34;name&#34;: &#34;Rebecca Black&#34;
            },
            {
                &#34;events&#34;: null,
                &#34;query&#34;: &#34;Pearl Harbour&#34;,
                &#34;promoted_content&#34;: null,
                &#34;name&#34;: &#34;Pearl Harbour&#34;
            },
            ...
            {
                &#34;events&#34;: null,
                &#34;query&#34;: &#34;Magdalena Neuner&#34;,
                &#34;promoted_content&#34;: null,
                &#34;name&#34;: &#34;Magdalena Neuner&#34;
            }
      ]
    },
    &#34;as_of&#34;: 1300016537
}
</code></pre>

<p>如何只返回前 3 个查询?在这种情况下:<em>福岛</em>、<em>丽贝卡·布莱克</em>和<em>珍珠港</em>。</p>

<p>使用示例代码,它是这样的:</p>

<pre><code>for (int i = 0; i &lt; ; i++)
    ];
</code></pre>

<p>虽然这是一个更简单的提要,但是否可以以相同的方式处理我正在寻找的内容?</p>

<p>我正在尝试返回“查询”的值:</p>

<p>所以我正在这样做:</p>

<pre><code>NSLog(@&#34;%@&#34;, [);
</code></pre>

<p>这当然会记录键“趋势”的内容,我如何不仅返回趋势的第一个(也是唯一的)键,还向下挖掘一个级别以返回“查询”的内容? </p>

<p>我也尝试过这样的事情:</p>

<pre><code>NSString *date = [[ allKeys] description];
NSArray *trends = ;
NSLog(@&#34;%@&#34;, );
</code></pre>

<p>但是不行……</p>

<p><strong>编辑(aftet honcheng 的回答):</strong></p>

<p>因为我想遍历“趋势”的结果,所以我在做:</p>

<pre><code>NSDictionary *luckyNumbers = ;
NSArray *keys = [ allKeys];

for (int i =0; i &lt; ; i++) {

NSLog(@&#34;%@&#34;, );


    }
</code></pre>

<p>显然出了点问题,因为我没有得到任何结果..</p></p>
                                    <br><hr><h1><strong>Best Answer-推荐答案</ strong></h1><br>
                                            <p><p>JSON 解析器通常返回原生 NSObject,例如 NSDictionary 和 NSArray。解析后,您只需将其视为一个新对象。 </p>

<p> 返回一个 NSArray ["trends", "as_of"]
[ allKeys"] 返回一个 NSArray ["2011-03-13 11:42:17"] </p>

<p>由于 allKeys 返回一个 NSArray,你可以只使用一个 for 循环来获取你所有的键。 </p></p>
                                   
                                                <p style="font-size: 20px;">关于iphone - 在 iOS 中解析 JSON(再次),我们在Stack Overflow上找到一个类似的问题:
                                                        <a href="https://stackoverflow.com/questions/5366694/" rel="noreferrer noopener nofollow" style="color: red;">
                                                                https://stackoverflow.com/questions/5366694/
                                                        </a>
                                                </p>
                                       
页: [1]
查看完整版本: iphone - 在 iOS 中解析 JSON(再次)