テキストファイルで、データを保持するための形式(CSV, XML, JSON)の違いについて

テキストファイルで、データを保持するための形式(CSV, XML, JSON)の違いについて

どれもテキストファイルで、データを保持するための形式です。異なるシステム/アプリ間でデータのやり取りを行なうために、エクスポート/インポートして使ったりします。

1, CSV(Camma Separate Value) = 一行目がヘッダ情報(無い場合もある)、二行目以降はヘッダに対応したデータが入っている。
2, XML(eXtensible Markup Language) = htmlと同様にタグが入れ子になっている。タグ名を自分で定義できる。
3, JSON(JavaScript Object Notation) = JavaScriptのオブジェクト表記法をベースにしている。WebAPIなどでは大人気。

 

例えば、以下のようにな名簿データがあったとしましょう。

no name sex age address
1 鈴木 30 横浜
2 佐藤 25 川崎
3 田中 35 品川

 

このデータを、CSV / XML / JSONで表現すると、以下の通り。

1, CSV
“no”,”name”,”sex”,”age”,”address”
“1”,”鈴木”,”男”,”30″,”横浜”
“2”,”佐藤”,”女”,”25″,”川崎”
“3”,”田中”,”男”,”35″,”品川”

2, XML
<?xml version=”1.0″ encoding=”UTF-8″ ?>
<members>
<member>
<no>1</no>
<name>鈴木</name>
<sex>男</sex>
<age>30</age>
<address>横浜</address>
</member>

<member>
<no>2</no>
<name>佐藤</name>
<sex>女</sex>
<age>25</age>
<address>川崎</address>
</member>

<member>
<no>3</no>
<name>田中</name>
<sex>男</sex>
<age>35</age>
<address>品川</address>
</member>
</members>
</xml>

3, JSON
{
“title”:”sample data”,
“members”:[
{“no”:”1″,”name”:”鈴木”,”sex”:”男”,”age”:”30″,”address”:”横浜”},
{“no”:”2″,”name”:”佐藤”,”sex”:”女”,”age”:”25″,”address”:”川崎”},
{“no”:”3″,”name”:”田中”,”sex”:”男”,”age”:”35″,”address”:”品川”}
]
}

う~ん、こうやって並べてみると、CSVが一番楽といえば楽だな。でも、入れ子データを表現出来ないからな(^_^;)