DevToolPal
日本語

XML を CSV に変換

繰り返される XML レコードを CSV の行に変換します。属性やネストした要素は列になります。

ローカルで処理、アップロードなし

オプション

入力

0 文字 · 0 B

出力

0 文字 · 0 B

何ができるか

このツールは XML データを CSV に変換します。<users> 内のすべての <user> のように、ドキュメント内で繰り返されるレコードを見つけ、レコードごとに CSV の行を 1 行書き出します。子要素と属性は列になり、ネストした要素はドット区切りの列名に平坦化され、すべての行が同じ列の組を持ちます。

使い方

  1. 入力 欄に XML を貼り付けるか、.xml ファイルをアップロードするか、サンプル をクリックします。
  2. 入力に合わせて右側に CSV が表示されます。壊れた XML は行と列付きで報告されます。
  3. 出力の 区切り文字 と、ヘッダー行を含める かどうかを選びます。
  4. CSV をコピーするか、.csv ファイルとしてダウンロードします。

例

<users>
  <user id="1"><name>Alice</name><address><city>Shanghai</city></address></user>
  <user id="2"><name>Bob</name><address><city>Beijing, China</city></address></user>
</users>

は次のようになります。

name,address.city,id
Alice,Shanghai,1
Bob,"Beijing, China",2

補足

区切り文字、引用符、改行を含むセルは、RFC 4180 に従って引用符で囲まれます。値は XML に現れるとおりのテキストとして保持されるので、先頭のゼロが失われることはありません。

よくある質問

› どの要素が行になりますか?

ルートの繰り返される子要素です。たとえば <users> 内のすべての <user> です。ルートの子要素が 1 つだけの場合は、その要素が唯一の行になります。

› 属性やネストした要素はどうなりますか?

属性は属性名の列になります(id="1" → id)。ネストした要素は address.city のようなドット区切りの列になります。繰り返される単純な値は "; " で連結されます。

› 列名が id ではなく @id になっているのはなぜですか?

属性と子要素が同じ名前を持つ場合、2 つの列を区別するために属性の @ 接頭辞が残されます。

› 結果を Excel で開けますか?

はい。.csv ファイルをダウンロードして開いてください。Excel で小数点の区切りにカンマを使っている場合は、区切り文字にセミコロンを選びます。