よく利用されるデータ構造!(CSV,YAML,JSON,XML)
Sponsored Links
皆さんこんにちは
お元気ですか。私は元気です。
今日はデータ構造のお話を書こうと思います。
皆さんどんなデータ構造を利用していますか?
csv?、json、yaml?、xml?まぁ色々ありますよね!
CSV(comma-separated values)
Excelを使っている時に時々見る形式ですね。
名前の通り、commaを利用して分割している形式です。Excel以外では殆ど使ってるところ見たことないですが…。
名前,性別,住所 山田太郎,漢,東京都文京区 山田花子,女,東京都杉並区
一番上の行は項目を示しているヘッダーで、分割をカンマで行っています。
(C++で解析する分には一番ラクだと思った俺は負け組かな)
XML(Extensible Markup Language)
表示形式はこんな感じ
<?xml version="1.0" encoding="Shift-Jis" ?> <list> <customer> <name>山田太郎</name> <gender>http://www.softbank.co.jp/</gender> </customer> <customer> <name>山田花子</name> <gender>http://www.rakuten.co.jp/info/</gender> </customer> </list>
<>のタグによって囲む形式HTMLと似ていますね。これをパースして利用することが多いです。
時々、APIとして提供されていたりします。
ユーザーがタグの内容を指定できるのが便利ですよね。
JSON(JavaScript Object Notation)
記載の仕方がJavaScriptの辞書のような形式ですが、様々なプログラムによって使われています。
この形式でAPIを提供している企業が多い気がするのは気のせいでしょうか。
{"name": "John Smith", "age": 33}
辞書型のような形式で持っています。
上記の例の場合nameはJohn Smith,ageは33という意味です。
YAML
YAML Ain't a Markup Languageの意味を持つそうで、マークアップ言語じゃないよってことだそう。
これだけは使ったことがないのですが、ナウいデータ構造だそう。
使ったことはないのですが、一応記載しますね。
men: [John Smith, Bill Jones] women: - Mary Smith - Susan Williams
例はWikipediaより
改行とかを使ってデータ構造を表現するそうです。JAVAだと型まで復元できるそうですね。素晴らしい。