ページへ戻る

− Links

 印刷 

CSVからXMLへ変換 のソース :: NJF Wiki

xpwiki:CSVからXMLへ変換のソース

« Prev[3]  
ゲームやアプリの設定ファイルで、

-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のライブラリの仕様でエンコードされるが、読み込み時にはちゃんとデコードされる。

« Prev[3]