1.目的
設定ファイルをjsonで定義していることが多いと思いますが、実際のリスト管理は表計算ソフトに頼っていることは多々あると思います。
そこで、csvをjsonへ変換するpythonスクリプトを作成してみました。
また逆に、jsonからcsvへ変換するスクリプトも作成し、表計算ソフトに取り込めるようにしてみました。
2.機能
csvからjsonへ変換する際に、あったら良いなと思う機能をオプションで指定できるようにしてみました。
1.数値変換
数字の場合に文字列ではなく、数値にしたい場合があるかと思い、オプションで指定できるようにしてみました。
(-n)
ただし、次のbooleanのオプションが優先されます。
2.boolean指定
オプションの後に渡した、キーにある値が下記の場合にtrueにそれ以外はfalsに変換されます。
(-b キー1,キー2,・・・)
- false(大文字、小文字は問わない)
- 1(数値、文字列問わない)
3.前提条件
csvの先頭行は必ず、キーとなっていることが必要です。
キーが重複して同じ物が定義されている場合、思ったような出力結果になりませんので注意して下さい。
4.準備
下記でダウンロードして下さい。
git clone https://github.com/aruelu/json_conv.git
5.実行方法
1.csvからjsonへ
cat csvファイル名 | ./csv_to_json.py [-n] [-b キー1,キー2,・・・] > jsonファイル名
又は入出力ファイルを指定
./csv_to_json.py -i csvファイル名 -o jsonファイル名 [-n] [-b キー1,キー2,・・・]
ファイルはどちらか片方だけの指定も可能です、必要に応じてファイル名を指定するか、パイプで繋ぐかして下さい。
2.jsonからcsvへ
cat jsonファイル名 | ./json_to_csv.py > csvファイル名
又は入出力ファイルを指定
./json_to_csv.py -i jsonファイル名 -o csvファイル名
ファイルはどちらか片方だけの指定も可能です、必要に応じてファイル名を指定するか、パイプで繋ぐかして下さい。
5.実行時の注意事項⚠️
-o オプション指定時に、すでにファイルが存在しているかの確認はしません。
強制的に上書きされるので注意して下さい。