結論から
- TSVは、フィールドをタブ、レコードを改行で区切って表形式のデータを交換するテキスト形式で、フィールド値の中に実際のタブ文字を含めることはできません。
- TSVはテキストエディターで内容を確認でき、Excel、LibreOffice Calc、OpenOffice Calcでは表として開けます。WindowsのExcelではテキストとして取り込み、区切り文字にタブを指定します。Macではテキストエディター、またはTSV対応の表計算ソフトを使います。スマートフォンでは、開く前に使用するアプリがプレーンテキストの表示やTSVの取り込みに対応するか確認してください。列がずれる場合は、元のテキストに余分なタブや値の途中の改行がないか調べます。
- 出所不明のTSVを表計算ソフトで開く際は注意が必要です。OWASPはTSVも表計算向け出力の確認対象に含めています。=、+、-、@で始まる値が数式として解釈されると、結果の改変や誤認、データ漏えいにつながる可能性があります。より大きな影響は、ソフトの設定、旧式の機能、利用者の操作に左右されます。拡張子だけでコマンドが実行されると判断することはできません。
TSVファイルとは:開き方・変換・注意点
TSVはTab-Separated Valuesの略です。IANAの登録では、先頭行にフィールド名を置き、すべてのレコードのフィールド数を揃えることが求められます。米国議会図書館はこの登録を事実上の仕様と位置づけ、拡張子.tsvとメディアタイプtext/tab-separated-valuesを挙げています。見出しで列の意味は示せますが、データの品質や出所を説明する文書を形式自体で扱うことはできません。
一般的な表計算ソフトでは、TSVのデータをCSV、XLS、XLSXに書き出せます。区切り文字をタブにして取り込み、列を確認してから目的の形式で保存または書き出してください。実際のタブや改行をTSVのフィールド内にそのまま保持することはできないため、書き出し側と取り込み側のエスケープ規則を確認します。必要なデータの出所や品質に関する説明は別に保存してください。
開き方
TSVはテキストエディターで内容を確認でき、Excel、LibreOffice Calc、OpenOffice Calcでは表として開けます。WindowsのExcelではテキストとして取り込み、区切り文字にタブを指定します。Macではテキストエディター、またはTSV対応の表計算ソフトを使います。スマートフォンでは、開く前に使用するアプリがプレーンテキストの表示やTSVの取り込みに対応するか確認してください。列がずれる場合は、元のテキストに余分なタブや値の途中の改行がないか調べます。
TSVはテキストエディターで内容を確認でき、Excel、LibreOffice Calc、OpenOffice Calcでは表として開けます。WindowsのExcelではテキストとして取り込み、区切り文字にタブを指定します。Macではテキストエディター、またはTSV対応の表計算ソフトを使います。スマートフォンでは、開く前に使用するアプリがプレーンテキストの表示やTSVの取り込みに対応するか確認してください。列がずれる場合は、元のテキストに余分なタブや値の途中の改行がないか調べます。
一般的な表計算ソフトでは、TSVのデータをCSV、XLS、XLSXに書き出せます。区切り文字をタブにして取り込み、列を確認してから目的の形式で保存または書き出してください。実際のタブや改行をTSVのフィールド内にそのまま保持することはできないため、書き出し側と取り込み側のエスケープ規則を確認します。必要なデータの出所や品質に関する説明は別に保存してください。
安全チェック
出所不明のTSVを表計算ソフトで開く際は注意が必要です。OWASPはTSVも表計算向け出力の確認対象に含めています。=、+、-、@で始まる値が数式として解釈されると、結果の改変や誤認、データ漏えいにつながる可能性があります。より大きな影響は、ソフトの設定、旧式の機能、利用者の操作に左右されます。拡張子だけでコマンドが実行されると判断することはできません。
送り主が分からない、拡張子が二重になっている、中身が拡張子と合わない——一つでも当てはまるなら、開く前に確かめてください。
変換するときは
一般的な表計算ソフトでは、TSVのデータをCSV、XLS、XLSXに書き出せます。区切り文字をタブにして取り込み、列を確認してから目的の形式で保存または書き出してください。実際のタブや改行をTSVのフィールド内にそのまま保持することはできないため、書き出し側と取り込み側のエスケープ規則を確認します。必要なデータの出所や品質に関する説明は別に保存してください。
元ファイルではなくコピーを変換し、変換後に画質・メタデータ・レイアウトを元と見比べてください。
よくある質問
TSVファイルとは何ですか?
タブでフィールドを区切り、1行に1レコードを記録するテキストの表です。IANAの登録では、先頭行の列名、各レコードで同じフィールド数、値の内部に実際のタブを含めないことが求められます。
WindowsでTSVファイルを開いてExcelに取り込むにはどうすればよいですか?
Excelのテキスト取り込み機能で、区切り文字にタブを指定します。値が正しい見出しの下に並ぶか確認してください。出所不明のデータは、取り込む前にテキストエディターで元の内容を確認することもできます。
MacでTSVファイルを開くにはどうすればよいですか?
テキストエディターで読むか、TSVに対応する表計算ソフトに取り込みます。表として取り込む場合は区切り文字にタブを指定し、列の対応を確認してください。
スマートフォンでTSVファイルを開くにはどうすればよいですか?
使用するアプリがプレーンテキストの表示やTSVの取り込みに対応しているか確認します。開く前にアプリの表示・取り込みオプションを確認してください。取り込める場合はタブ区切りを指定し、難しい場合はパソコンの対応ソフトで開いてください。
TSVファイルの取り込みで列がずれる原因と対処法は何ですか?
まず区切り文字がタブになっているか確認します。値の途中の余分なタブはフィールドを増やし、改行はレコードを分割する原因になります。元のテキストでフィールド数を比べ、出力元のエスケープ規則を確認してください。
TSVとCSVの違いは何で、どちらを選べばよいですか?
TSVはタブ、CSVはカンマでフィールドを区切ります。受け取り側のソフトが対応する形式を選んでください。TSVでは、値に含まれるタブや改行をどのように表現するか、双方で確認する必要があります。
TSVファイルをXLSX・XLS・CSVに変換するにはどうすればよいですか?
対応する表計算ソフトに取り込み、区切り文字と列を確認してからXLSX、XLS、CSVとして保存または書き出します。一般的な表計算ソフトはこれらの出力に対応します。変換後は値とエスケープ表現を確認してください。
TSVファイルには数式インジェクションのリスクがありますか?
はい。信頼できない値を表計算ソフトが数式として解釈するとリスクが生じます。特に=、+、-、@で始まる値に注意してください。影響はソフトや設定に依存し、TSVという拡張子だけでコマンド実行を意味するわけではありません。
TSVファイルの値にあるタブと改行はどうエスケープしますか?
実際のタブや改行をフィールド内にそのまま保持することはできません。米国議会図書館は変換時のエスケープ表現に言及しています。特定の表記が共通して使えると決めつけず、書き出し側と取り込み側の規則を確認してください。
TSVファイルが正常に開けばデータの出所や品質も保証されますか?
いいえ。正常な表示は、そのソフトで表を読めることを示すだけです。TSV自体はデータの品質や出所に関する文書を扱えません。必要な説明は別に保存し、出所と値を個別に確認してください。
関連する形式
参考資料
IANA:text/tab-separated-values 媒体类型登记 · IANA,媒体类型注册机构及 TSV 事实规范
TSV, Tab-Separated Values · 美国国会图书馆,数字格式保存说明
OWASP Web Security Testing Guide:CSV Injection · OWASP Foundation,官方安全测试指南