限定XMLとCSVの相互変換
table/columns/column/row/cellの限定XMLモデルと、見出し付きCSVを相互変換します。DOCTYPE・ENTITY・属性・名前空間を拒否し、外部リソースを読み込みません。
列名と行の値を明示して表形式で渡す
日本語の列名もタグ名にせずcolumnの文字列として保持します。XMLはtableの先頭にcolumns、その後にrowを並べ、各rowに列数と同じcellを置くモデルへ限定しています。複雑なXMLを勝手に平坦化しません。
HTML表→CSVはWeb表、CSV→JSONはJSON形式への変換です。こちらは決めたXML表モデルの文字列データをCSVと往復するための道具です。
ツール本体
入力・操作・結果
上から入力し、必要な操作を行って、表示された結果と次の操作を確認してください。
入力と結果はこの画面のメモリ内で処理します。ページを再読み込みすると入力は消えます。コピーは利用者の操作で行います。
入力データは原則ブラウザ内で処理し、URLやアクセス解析へ保存しません。ページを更新すると入力は失われます。機密情報は入力しないでください。
使い方
- 方向を選び、見出し付きCSVか対応するXMLモデルを入力します。
- XMLのcolumnsとrow内cellの列数を確認して変換します。
- 文字参照、空欄、改行とCSV数式対策の結果を確認してコピーします。
例: 名前,値 / 山田,10 は <table><columns><column>名前</column><column>値</column></columns><row><cell>山田</cell><cell>10</cell></row></table> の形になります。
columnsが列順を決め、row内のcellはその順に対応します。XMLの&や数値文字参照は文字列へ戻し、CSV出力には数式対策を適用します。
このツールを使う場面
- 確認できること
- 列定義付きの平坦なXML表とCSVを相互変換
- 使う前に見るポイント
- 方向を選び、見出し付きCSVか対応するXMLモデルを入力します。
- 結果を見たあとにやること
- columnsが列順を決め、row内のcellはその順に対応します。XMLの&や数値文字参照は文字列へ戻し、CSV出力には数式対策を適用します。
つまずきやすいポイント
入力と計算条件
属性、名前空間、複雑な入れ子、コメント、CDATA、処理命令、DOCTYPE・ENTITY宣言は未対応です。XML一般の変換、XPathやXSD検証とは称しません。
境界値・事前チェック項目
対応する範囲
入力20万文字、50列・1000行、XML2万要素・深さ3、XML出力20万文字まで。XML宣言はversion 1.0と任意のUTF-8だけ対応します。
よくあるミスと回避策
結果を使う前に
XMLでは生の改行CRLFをLFへ正規化します。CSV数式対策のアポストロフィは出力データへ反映されるため、機械読込先では扱いを確認してください。
FAQ
日本語の列名を使えますか?
使えます。column要素の文字列として保持するため、列名をXMLタグ名へ変換しません。
一般的な業務XMLをそのまま変換できますか?
対応モデルに一致する場合だけです。属性・名前空間や階層構造を持つXMLはエラーにし、黙って情報を捨てません。
外部実体参照を読みますか?
読みません。DOCTYPE・ENTITY宣言を拒否し、定義済み5種と数値文字参照だけを処理します。
基本FAQ
入力データは外部へ送信されますか?
原則として送信されません。入力内容はブラウザ内で処理し、URLやアクセス解析へ保存しません。例外がある場合は各ツールページ内に明記しています。
入力内容は自動保存されますか?
原則として自動保存しません。ページを更新すると入力は失われます。コピーやダウンロードで保存する場合は、ご利用端末内に保存されます。
関連ツール
同じ作業の前後で使うことがあるツールです。