CSV→JSON変換ツール
無料のCSV→JSON変換ツール。JSONからCSVへの変換もできます。引用符、フィールド内の改行、セミコロン区切りのExcelファイルにもブラウザ上で対応。何もアップロードされません。
できること
CSVはテキストで書かれた表です。1行に1レコードで、フィールドは区切り文字で分けられています。単純に見えるからこそ、変換ツールは黙って間違えます。引用符の中のカンマは新しい列ではなくテキストの一部です。引用符の中の改行は新しいレコードではなくフィールドの一部です。そして、ポルトガル語、スペイン語、フランス語、ドイツ語のExcelはセミコロンで保存します。それらの国ではカンマが小数点だからです。この変換ツールはRFC 4180の規則に従ってCSVを読み、すべての行で列の数がそろう区切り文字を探して判定し、各行をヘッダーをキーとするJSONオブジェクトに変換します。逆方向では、最初のオブジェクトだけでなく、どれかのオブジェクトに現れるすべてのキーに列を作ります。
使い方
- CSVかJSONを貼り付けるか、ファイルを開きます。
- オプションを確認します:区切り文字、ヘッダー行、データ型。
- 必要な方向に変換し、結果をコピーまたはダウンロードします。
よくある質問
郵便番号やIDがテキストのままなのはなぜですか?
数値にすると値が変わってしまうからです。007 は 7 になり、16桁を超えるIDはJavaScriptによって黙って別の数値に丸められます。往復しても変わらない値だけを数値にしています。すべてをテキストのままにしたい場合は、型の変換をオフにしてください。
ExcelのCSVを読み込んだら、全部が1列に入ってしまいました。
おそらくセミコロンで保存され、カンマで読み込まれたのでしょう。区切り文字を自動検出のままにすれば、よく使われる4種類を確認します。または自分でセミコロンを選んでください。
4,50 のような小数がテキストのままなのはなぜですか?
セミコロン区切りのファイルでは、4,50 はおそらく4.5ですが、1,500 は1.5かもしれないし1500かもしれません。推測すると、警告なしに値が変わってしまいます。どちらなのか分かっている、ご自身のプログラムで変換してください。
入れ子のオブジェクトはどのように列になりますか?
平坦化をオンにすると、{"address": {"city": "Recife"}} は address.city という列になります。リスト、および平坦化がオフのときのオブジェクトは、セルの中にJSONテキストとして書き込まれるので、何も失われません。
なぜ数式から保護するのですか?
表計算ソフトは =、+、-、@ のいずれかで始まるセルを数式として扱います。数式はインターネットからデータを取ってきたり、コマンドを実行したりできます。データがユーザーやWebサイトから来たものなら、Excelでファイルを開く前に保護をオンにしてください。本物の負の数はそのまま残ります。
RFC 4180 — CSV
Wikipedia — Comma-separated values
OWASP — CSV Injection