CSVの行を各言語ネイティブの配列リテラルに変換する
このコンバーターの役割
CSVファイルは区切り文字で区切られた値の行にすぎませんが、コードではその同じ行を本物の配列リテラルとして扱う必要があります。このツールはCSVまたはTSVのテキストを解析し、プロジェクトにそのまま貼り付けられるソースコードへ書き換えます。行と列からなる2次元配列にも、ヘッダー行をキーにしたオブジェクトの配列にもできます。区切り文字を読み取って各行をフィールドに分割し、選んだ言語——JavaScript、Python、Java、C#、PHP、Go、Ruby、Rust——の配列と文字列の構文で結果を出力します。
変換は逆方向にも対応します。逆変換モードでは既存の配列を受け取り、再びCSVへシリアライズするので、コードの中のデータを表計算ソフトで扱えるファイルへ取り出せます。
こんなときに使う
CSVエクスポートの表形式データを、スクリプト内のリテラルとして使いたいときに役立ちます。テスト用のフィクスチャを用意する、参照テーブルをハードコードする、ファイル読み込みを書かずに小さなデータセットをデモに埋め込む、といった場面です。ターゲット言語ごとにネイティブな構文が出力されるため、括弧や引用符を手直ししなくてもそのままコンパイル・実行できます。
オブジェクト配列モードは、表計算シートを構造化されたレコードに変える最短の方法です。ヘッダーのオプションを有効にすると、各行は先頭行から取ったキーを持つオブジェクトになり、そのまま反復処理にかけられます。
例:3行を配列リテラルへ
先頭行に name,age,active、続いて Alice,30,true と Bob,25,false というCSVを考えます。JavaScriptの2次元配列にすると [["name","age","active"],["Alice",30,true],["Bob",25,false]] になります。オブジェクト配列の出力に切り替えると [{"name":"Alice","age":30,"active":true},{"name":"Bob","age":25,"active":false}] が得られます。Pythonを選べば、同じデータがJavaScriptのリテラルの代わりに True、False、None として返ります。
区切り文字・引用符・型の扱い
区切り文字は変更できます。カンマ、セミコロン、タブ、パイプに加え、特殊なケース向けの任意の文字も指定でき、セミコロンを使うヨーロッパ圏のエクスポートやTSVファイルで重要になります。型の自動判定は、30 や true のようなフィールドを引用符付きの文字列ではなく数値や真偽値のまま保つかどうかを決め、すべての値を文字列として残したいときはオフにできます。逆方向では、すべてのフィールドを引用符で囲む、ヘッダー行を含める、といったオプションでCSVの書き出し方を制御します。最大5MB(CSV、TSV、TXT)のアップロードも、貼り付けたテキストと同じように処理されます。