1: 2015-06-06 (土) 06:01:05 njf[4] [5] [6] With "attach" plugin. (Created empty) |
現: 2015-06-06 (土) 15:13:19 njf[4] [7] [8] | ||
---|---|---|---|
Line 1: | Line 1: | ||
+ | ゲームやアプリの設定ファイルで、 | ||
+ | -CSVは編集が表計算ソフトで出来るので楽だけど、読み込んでちゃんとパースするのが割と面倒。検索とかの機能も自作 | ||
+ | |||
+ | -一方XMLは大抵の言語でサポートされていて読み込みは楽。大抵要素検索とかも実装済み。一方大きなファイルの編集は面倒。 | ||
+ | |||
+ | |||
+ | そういうわけで表計算ソフトで編集、CSVで出力してXMLに変換すればいいかと思いツールを作った。ツール本体は添付ファイルを参照&ref(csvToXml.py);。 | ||
+ | |||
+ | python3が必要 | ||
+ | |||
+ | 使い方は、ファイル内一行目 | ||
+ | |||
+ | #!/usr/bin/python3 | ||
+ | |||
+ | をお使いのpython3のパスに変更 | ||
+ | |||
+ | 最終行 | ||
+ | |||
+ | xmlFile.write("resource/"+fileName.replace("csv","xml")) | ||
+ | |||
+ | を出力したいディレクトリ名と拡張子に変更。上のデフォルト値では「resource」ディレクトリに元ファイルのcsvという拡張子をxmlという拡張子にして出力される。 | ||
+ | なのでファイル編集が面倒ならcsvのあるフォルダにresourceフォルダを作っても良い。 | ||
+ | |||
+ | 入力するCSVファイルに日本語などが含まれるときはUTF-8で保存が必須。表計算ソフトで大抵保存時に指定できる。 | ||
+ | |||
+ | 実行は | ||
+ | |||
+ | ./csvToXml.py yourFile.csv | ||
+ | |||
+ | とするとルート要素名「items」で各レコードの要素名「item」、各データの要素名が先頭行の名前になっているXMLファイルが出力される。 | ||
+ | |||
+ | つまり | ||
+ | |||
+ | A,B,C | ||
+ | 1,2,3 | ||
+ | |||
+ | が | ||
+ | <items> | ||
+ | <item> | ||
+ | <A>1</A> | ||
+ | <B>2</B> | ||
+ | <C>3</C> | ||
+ | </item> | ||
+ | </items> | ||
+ | |||
+ | となる。(実際には改行やタブは無い) | ||
+ | |||
+ | また、日本語は使っているpythonのライブラリの仕様でエンコードされるが、読み込み時にはちゃんとデコードされる。 |
(This host) = https://njf.jp