JSONで用意されているデータをNSArrayやNSDictionaryにして使いたかった。
結論
これでいい
$ plutil -convert xml1 hoge.json -o hoge.plist
解説
plutilはplistがらみのユーティリティで、一コマンドにいろんな機能がまとまった良くない設計の見本みたいな便利ツールです。
plutilが変換できるフォーマットは以下の3種類。
- json
- xml1
- binary1
plistにはXML形式とバイナリ形式があることをご存知なら、特に説明はいらないと思います。
-convertの引数には出力フォーマット名を書きます。
入力のフォーマットは自動で認識してくれるみたいです。
json -> xml1 だけでなく、 xml1 -> json もできます。
ちなみに-oオプションを忘れると 入力ファイルを上書きされる ので注意しましょう。
(stdoutに出てくるものだと思ってはいけない。-o -とすればstdoutに出てくる)
あとは
適当にNSBundleとかでファイルパスを取ってきてNSArray#arrayWithContentsOfFileとかで使えるようにしたら幸せになれた。