iPhone でXMLのDOM解析を行う
デフォルトの NSXMLPerser がシーケンスアクセスしかできなくてとても扱いづらい。
かといって、根っこの libxml2 は高性能で早くて DOM 使えるのにドキュメントが腐ってて扱いにくい。
で、探して見っけたのがこれ
http://code.google.com/p/gdata-objectivec-client/
使い方は、以下の通り。
- Frameworks を右クリック、追加、既存のフレームワーク
- /Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS2.2.1.sdk/usr/lib/libxml2.2.dylib をさくっと選択。
- ターゲットのバイナリをライブラリにリンクに、libxml2.dylib をドロップ。
- ターゲットを開いて、ビルドタブを開き、「リンク」「他のリンカフラグ」に「-lxml2」を追加。
- そのまま、「検索パス」「ヘッダ検索パス」に「/usr/include/libxml2」と「/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS2.2.sdk/usr/include/libxml2」を追加。
- http://code.google.com/p/gdata-objectivec-client/ このへんからライブラリ落としてきて解凍
- GDataTargetNamespace.h, GDataDefines.h, GDataXMLNode.h, GDataXMLNode.m をプロジェクトにコピー
これでとりあえず準備完了。
以下サンプル
続きを読む