2011-12-20 10 views
0

で、このXMLデータを解析するために、私はこのXMLを解析する方法を把握しようとしています..どのようNSXMLParser

<item> 
    <title> 
     <![CDATA[Preview: Courtney Crumrin and the Night Things Special Edition]]> 
    </title> 
    <description><![CDATA[]]></description> 
    <pubDate>Tue, 20 Dec 2011 11:52:48 -0800</pubDate> 
    <link>http://www.comicbookresources.com/?page=preview&amp;id=10864</link> 
    <guid>http://www.comicbookresources.com/?page=preview&amp;id=10864</guid> 
</item> 

二つの問題、構造がありますが、多くの項目があるので、私は考えていますNSDictionaryNSMutableArrayを作成して、これらの他の値をアイテム内に保持することができます。もしそうなら、他の値をNSDictionaryに渡す方法は正しいでしょうか?

もう1つの質問は、CDATAをどのように扱うかです。それは無視されるか、それとも特別な何かをしなければならないのでしょうか?

答えて

2

もちろん、辞書の配列を使用しても問題ありません。一般に、変更可能な辞書の可変配列を使用したいと思うでしょう。新しい<item>要素を開始するたびに、新しい辞書を作成して、サブ要素を受け取ったときにそれを入力してください。閉じる</item>タグに到達したら、ディクショナリを配列に追加します。

CDATAについては、パーサーデリゲートは-parser:foundCDATA:メソッドを実装する必要があります。次に、xmlパーサーは、通常の文字データの場合は-parser:foundCharacters:と同じように、そのメソッドを呼び出すことによってデータを報告します。

+0

私はどのようにdidStartElementを設定しましたか? mutable配列を設定するにはif([elementName isEqualToString:@ "item"])を使用しますが、辞書を設定するにはどうすればよいですか? –

+0

可変配列は、 'NSXMLParserDelegate'メソッドを実装するクラスのインスタンス変数でなければなりません。 –

関連する問題