ForHosting KIT · サイト取得・監視

CSVをJSONへ変換

見出し行のあるCSVを貼り付けると、1行ごとに1件のレコードになります。Ada,"Compiler, pioneer",trueでは、引用符の中のカンマは同じ値に残ります。列数が合わない行は行番号で知らせます。ブラウザで無料で使えます。

  • 無料
  • ブラウザで動作
  • 登録不要
  • データは端末の外に出ません
ご利用方法 ウェブAPIメールTelegramアプリ 近日

引用符内のコンマ、エスケープされた引用符、WindowsとUnixの改行、引用符内の改行に対応しています。各データ行の列数は見出しと完全に一致する必要があり、一致しなければ具体的なエラーを返して変換を停止します。

信頼できる見出し行を持つCSVを準備します

最初の行では、すべての列に空ではない一意の名前を付けてください。たとえば、name,email,statusという見出しなら、すべてのオブジェクトに同じ3個のキーが作られます。CSVには信頼できる型情報がないため、値は文字列のまま保持されます。

数字に見える値でも、先頭のゼロに意味がある口座コードかもしれません。また、日付は地域によって解釈が異なる場合があります。元の文字列を保持することで、破壊的な型推測を避け、受け取り側のアプリケーションで適切なスキーマを適用できます。

UnixとWindowsの改行を受け付け、表計算ソフトが先頭に付けることのあるバイト順マークも除去します。標準的なCSVの引用規則にも対応しています。コンマや改行を含む値は二重引用符で囲み、値内の二重引用符は2個続けて記述してください。

列数を厳密に検査する理由を確認します

この変換では、データ構造を意図的に厳しく検査します。見出しを解析して列数を数え、その後のすべてのレコードに同じ列数を要求します。列数が一致しない場合は、1から始まるCSVの行番号、実際の列数、期待される列数をエラーに示します。

これにより、寛容すぎる変換ツールで起こりやすい危険な問題を防げます。空の値は許可され、空文字列になりますが、構造が不一致のレコードは許可されません。問題のある出力を入口で発見できるため、誤ったプロパティを保存した後に修正する必要がありません。

アルゴリズムは決定的なので、同じCSVテキストからは常に同じ結果が得られ、ネットワーク通信、乱数、時刻は使用しません。結果は忠実な構造変換であり、データクリーニングではありません。数値、真偽値、日付、nullを推測せず、見出しの変更や壊れた行の修復も行いません。

この分離により、変換処理は各値を見出しへ割り当て、後続のスキーマが意味を決定できます。入力が別の区切り文字を使う場合は、事前にコンマ区切りへ正規化してください。

行の列数が正しくない場合はどうなりますか?

対象の行を示し、実際の列数と期待される列数を伝える入力エラーで変換を停止します。

空のセルを使用できますか?

はい。 行全体の列数が正しければ、空のセルは空文字列として出力されます。

数値や日付が文字列のままなのはなぜですか?

CSVには信頼できる型の情報がないためです。数字に見える値が先頭のゼロに意味のある口座コードだったり、日付の読み方が地域で違ったりします。型はあとで利用する側が決めます。

セミコロン区切りのファイルも変換できますか?

そのままでは変換できません。カンマ区切りを前提としているため、先に区切り文字をカンマに置き換えてください。カンマを含む値は二重引用符で囲みます。

値の中にカンマや改行を入れられますか?

入れられます。値を二重引用符で囲めば、カンマや改行を含めても1つの値として扱われます。値の中の引用符そのものは、2つ重ねて書きます。

このページの機能はすべてAPIからも利用できます。自社システムに組み込みたいチーム向けのセクションです。それ以外の方は上のツールをそのままお使いください。

POSThttps://api.kit.forhosting.com/web/csv-to-json

Bearerトークンで認証し、POST1回でタスクをキューに登録します。結果はWebhookまたは署名付きリンクで受け取れます。

curl -X POST https://api.kit.forhosting.com/web/csv-to-json \
  -H "Authorization: Bearer $KIT_KEY" \
  -H "Content-Type: application/json" \
  -d '{"text":"name,role,active\nAda,Engineer,true\nGrace,Admiral,false"}'
{
  "text": "name,role,active\nAda,Engineer,true\nGrace,Admiral,false"
}
{
  "task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
  "type": "web.csv_to_json",
  "status": "queued",
  "_links": {
    "result": "/tasks/tsk_…/result"
  }
}

非同期APIです。task_idは即時に返ります。ポーリングは1秒あたり1リクエストまでです。

1リクエストあたり$0.002

単価はすべて公開しています。トークン換算や独自クレジットはありません。失敗したタスクは課金されません。

timeout_sec30
max_crawl_pages25
HTTPコード意味
401unauthorizedAPIキーが無効か、指定されていません。Authorizationヘッダーを確認してください。
402insufficient_balance残高が不足しています。チャージ後に再度お試しください。
404unknown_type指定されたタスクタイプは存在しません。タイプ名を確認してください。
429rate_limitedリクエストが多すぎます。しばらく待ってから再度お試しください。

不正な入力を見過ごさず、各データ行から予測可能なオブジェクトを得たい場合に、CSVをJSONへ変換できます。見出し行を含むCSVテキストを貼り付けると、各見出しがJSONのプロパティ名になります。

信頼できる見出し行を持つCSVを準備します

その名前が各JSONオブジェクトのキーになります。空白は削除しません。 見出しだけの文書も有効で、空のJSON配列を返します。

列数を厳密に検査する理由を確認します

末尾の値が空の場合も、その空フィールドを開始するコンマが必要です。同様に、正しく引用されたフィールド内でない限り、余分なコンマは新しい列として扱われます。つまり、値が誤った見出しの下へずれたり、欠けたフィールドが通知なしで消えたりしません。閉じていない引用符、引用されていないフィールドの途中にある引用符、閉じ引用符の後に続く不正な文字も拒否します。

JSON出力をアプリケーションで安全に利用します

結果は元の行順を保ったJSON配列で、各データレコードが1個の単純なオブジェクトになります。APIへの送信、テストでの確認、JSON文書としての保存、業務固有の型を適用する検証処理への入力に利用できます。自動化でAPIを使う場合は1回$0.002で、対話的な変換はブラウザー内で実行できます。

API用のペイロードを準備します

表計算ソフトの出力を一貫したキーのオブジェクトへ変換してから、API固有のスキーマを適用できます。

エクスポート処理を検証します

見出しよりフィールドが多い、または少ないレコードを含むCSVを生成時点で拒否できます。

再現可能なテストデータを作成します

小さなCSV例を、自動テストで比較しやすい安定したJSON配列へ変換できます。

数値や真偽値はJSON固有の型へ変換されますか。

いいえ。コード、先頭のゼロ、曖昧な値を推測で変更しないよう、すべてのCSVセルを文字列として保持します。

フィールドにコンマや改行を含められますか。

はい。フィールドを二重引用符で囲んでください。その中の二重引用符は2個続けて記述します。

APIによる変換の料金はいくらですか。

APIは1回$0.002です。同じ決定的な変換をブラウザー上で対話的に実行することもできます。

KITの完全なドキュメントを見る →