Tab-Separated Values

Tab-Separated Values (TSV) は、データベースにおける表や表計算データなど、表形式でデータを格納するためのシンプルなテキスト形式のデータ形式でありHow To Use Tab Separated Value (TSV) Files Published by the International Monetary Fund、データベース間で情報を交換する方法の1つである。

TSV形式における各レコードは、テキストファイルの1行である。レコードの各フィールド値は、タブ文字で区切られる。すなわち、TSV形式は（区切り文字区切り形式）の一種である。タブ区切り形式ともいう。

TSVフォーマットはシンプルなファイルフォーマットであり、多くのコンピュータプログラムが対応しているため、異なるコンピュータプログラム間で表形式のするためによく使用される。TSVは、一般的に使用されているComma-Separated Values（CSV形式、タブ区切り形式）に代わるものである。CSV形式ではコンマを区切り文字としているため、フィールドにコンマが含まれる場合には、これをエスケープしないと問題が生じる。コンマはテキストデータでは頻出する文字であるが、タブは一般的なテキストの中に出現することは稀である。TSVのIANA標準では、フィールドにタブ文字の使用を禁止している。

 例 
の先頭をTSV形式にすると、以下のようになる。
Sepal length	Sepal width	Petal length	Petal width	Species
5.1	3.5	1.4	0.2	I. setosa
4.9	3.0	1.4	0.2	I. setosa
4.7	3.2	1.3	0.2	I. setosa
4.6	3.1	1.5	0.2	I. setosa
5.0	3.6	1.4	0.2	I. setosa

上記のTSVプレーンテキストは、以下の表データに対応している。
 Sepal length Sepal width Petal length Petal width Species 5.1 3.5 1.4 0.2 I. setosa 4.9 3.0 1.4 0.2 I. setosa 4.7 3.2 1.3 0.2 I. setosa 4.6 3.1 1.5 0.2 I. setosa 5.0 3.6 1.4 0.2 I. setosa
 利点 

カンマ区切り形式と比較した場合下記のような利点がある

 UNIX系ソフトウェアやMicrosoft Excelなど標準形式として扱っているソフトウェアが多く、読み込みや書き出しの手間がひと手間すくないことが多い。
 例：
 cut 何も指定しなければ入力をタブ区切りとして受け付ける。
 mysql 何も指定しなければファイルに出力するときの形式がタブ区切りとなる。またmysqlimportで取り込む場合も何も指定しなければタブ区切りとなる。
 Microsoft Excel コピー&貼り付けの形式がタブ区切りとなっている。
 タブは入力フォームに入力できないことが一般的で、解析の際、区切り文字がフィールドに混在することを想定した処理を省略できる。 例えばHTMLフォームの入力だけを格納しているmysqlのテーブルをファイルに出力するとタブが使われているのは区切り文字だけであると想定できる。 なお、HTMLのフォームを使わずHTMLのリクエストから迂回してタブを入力することもできるが、本来の経路ではタブを入力できないはずなのでタブが入力された場合は不正としてエラーにできる点も利点となる。

 関連項目 
 フラットファイルデータベース
 区切り文字
 Comma-Separated Values
 Jaql

 脚注 

 注釈 

 出典 

 参考文献 
 IANA, Text Media Types, text/tab-separated-values, Paul Lindner, U of MN Internet Gopher Team, June 1993

 外部リンク 
 Tab Separated Value File Format, Gnumeric manual

Category:データベース
Category:オープンフォーマット
Category:データシリアライゼーションフォーマット
Category:テキストファイルフォーマット