Tab-Separated Values

Tab-Separated Values (TSV) は、データベースにおける表や表計算データなど、表形式でデータを格納するためのシンプルなテキスト形式のデータ形式であり、データベース間で情報を交換する方法の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プレーンテキストは、以下の表データに対応している。

利点 

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

 UNIX系ソフトウェアやMicrosoft Excelなど標準形式として扱っているソフトウェアが多く、読み込みや書き出しの手間がひと手間すくないことが多い。
 例：
 cut 何も指定しなければ入力をタブ区切りとして受け付ける。
 awk 何も指定しなければ入力をタブ区切りとして受け付ける。
 mysql 何も指定しなければファイルに出力するときの形式がタブ区切りとなる。
 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

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