iPhoneアプリでデータベースぽいものであるものであるplistファイル。
チームで作っる場合、データはエクセルで作ることがよくあると思います。そのなものいちいち編集したり、置換したりするのは大変なのでcsvからplistへ変換するプログラムを書きました。
言語はscalaです
こちらに置いてあります。
GitHub - akuraru/csv2plist: csv to plist converter
使い方
読み込ませるcsvファイルはこれだとしたら
(sample.csv)
id,テスト,本文 1,テスト1,"改行 含み" 2,test2,"カンマ,含み" 4,てすと3,"ダブルクォーテーション""含み" 1,っってすと,てふてふ
初めの一行を目次として使う場合
ターミナルから次のように実行すると
$ java -jar csv2plist.jar -t sample.csv
こんな感じでplistファイルを出力します。
(sample.plist)
<?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd"> <plist version="1.0"> <array> <dict> <key>id</key> <string>1</string> <key>テスト</key> <string>テスト1</string> <key>本文</key> <string>改行 含み</string> </dict> <dict> <key>id</key> <string>2</string> <key>テスト</key> <string>test2</string> <key>本文</key> <string>カンマ,含み</string> </dict> <dict> <key>id</key> <string>4</string> <key>テスト</key> <string>てすと3</string> <key>本文</key> <string>ダブルクォーテーション"含み</string> </dict> <dict> <key>id</key> <string>1</string> <key>テスト</key> <string>っってすと</string> <key>本文</key> <string>てふてふ</string> </dict> </array> </plist>
さらに次のような実行異なった形式で出力される
$ java -jar csv2plist.jar -a hoge.csv
<?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd"> <plist version="1.0"> <array> <array> <string>テスト1</string> <string>test2</string> <string>てすと3</string> </array> <array> <string>っってすと</string> </array> </array> </plist>
$ java -jar csv2plist.jar -t -a hoge.csv
<?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd"> <plist version="1.0"> <array> <array> <dict> <key>テスト</key> <string>テスト1</string> <key>本文</key> <string>改行 含み</string> </dict> <dict> <key>テスト</key> <string>test2</string> <key>本文</key> <string>カンマ,含み</string> </dict> <dict> <key>テスト</key> <string>てすと3</string> <key>本文</key> <string>ダブルクォーテーション"含み</string> </dict> </array> <array> <dict> <key>テスト</key> <string>っってすと</string> <key>本文</key> <string>てふてふ</string> </dict> </array> </array> </plist>
CSVファイルにタイトル行がない場合は、-tのオプションなしで実行してください。
$ java -jar csv2plist.jar hoge.csv