UltKit

TXTをXMLに変換

1行に1レコードを書いたテキストファイルは作るのは簡単ですが、タグ付きデータを前提とするシステムには取り込みにくい形式です。.txtをアップロードすれば、1行を1要素とし、ヘッダー名をタグにした整形式のXMLが得られます。

データ変換

またはCSV, TSV, TXT … ファイルをここにドロップ ·

1ファイルあたり最大95 MB· 最大20ファイルまで· 30分後に削除

出力

ファイルは当社のサーバーで処理され、30分後に削除されます。

このツールの使い方

  1. 1

    区切りテキストをアップロード

    1行目に列名が入った .txt ファイルを追加します。1ファイル95 MBまで、最大20ファイルを追加できます。区切り文字は「自動検出」になっています。

  2. 2

    外側の要素名を指定

    詳細設定の中で、このページではXMLルートタグが records に設定されています。受け取り側のシステムが求める名前(products や employees など)に変更してください。

  3. 3

    XMLに変換

    XMLに変換 → ではなく、変換ボタンを押します。整形して出力がオンなので、インデントが付き、テキストエディタやブラウザで確認しやすいファイルになります。

テキストファイルの各行が1つの行要素になり、各列はヘッダー名のタグになります。すべて、指定したルートタグの中に収められます。

TXTファイルをXMLに変換する理由

区切り文字付きのテキストは、スクリプトやスキャナー、古いデータベースが標準で出力する形式です。一方XMLは、多くの受け取り側システムが前提としている形式です。商品カタログ、図書館や出版のツール、翻訳ソフト、要素名で読み込む設定ローダーなどが該当します。XML 1.0は、SGMLを簡素化した形として1998年2月にW3C勧告となり、その後の時代の企業向けソフトウェアの多くが今もXMLに対応しています。

両者の違いは大部分が機械的なものなので、テキストエディタで手作業で直すのは半日を無駄にするようなものです。よくある用途は、倉庫からの書き出しをWebショップ向けのXMLインポート用にする場合、翻訳ツール向けの用語集を作る場合、XMLフィクスチャを読み込むアプリケーションのテスト用レコードを作る場合などです。元データがすでにカンマ区切りなら、CSVをXMLに変換のページが適しています。

TXT→XML変換で分割できるテキストの形式

from ↓ · to →XMLJSONCSV
カンマ ,カンマ , to XML: yesカンマ , to JSON: yesカンマ , to CSV: yes
セミコロン ;セミコロン ; to XML: yesセミコロン ; to JSON: yesセミコロン ; to CSV: yes
TabTab to XML: yesTab to JSON: yesTab to CSV: yes
パイプ |パイプ | to XML: yesパイプ | to JSON: yesパイプ | to CSV: yes
Single spaceSingle space to XML: yesSingle space to JSON: yesSingle space to CSV: yes
固定幅の列– 固定幅の列 to XML: no– 固定幅の列 to JSON: no– 固定幅の列 to CSV: no
supported not offered**区切り文字**が「自動検出」の場合、ファイルから区切りを判別します。値の中に自動で選ばれた文字が含まれる場合は、ご自身で指定してください。区切り文字がなく、位置だけで揃えた列は分割できません。

TXTからXMLへの変換結果の例

入力行 sku|name|price と A-1001|デスクライト|24.90 を、XMLルートタグ records、整形して出力オンで変換した結果
<records>
  <row>
    <sku>A-1001</sku>
    <name>デスクライト</name>
    <price>24.90</price>
  </row>
</records>

ヘッダー名はタグになるため、有効なXML名である必要があります。先頭は英字またはアンダースコアにし、スペースや記号は避けてください。Unit Price のようなヘッダーは、変換前に unit_price と書き換えるのがおすすめです。やはりJSONが必要な場合は、TXTをJSONに変換で同じヘッダー行がキーとして使われます。ほかの変換先はデータ変換で確認できます。

プレーンテキストとXMLの形式の基本

TXT

プレーンテキスト

TXTファイルには、書式、フォント、画像、レイアウトのない文字だけが入っています。最近のテキストファイルは、あらゆる言語を扱える UTF-8 で符号化されているのが普通ですが、古いファイルは別の文字コードで、文字化けすることがあります。プレーンテキストはごく小さく、古くなることがなく、スマートフォンからサーバーまであらゆる機器で開けます。太字、表、画像は保持できないため、構造は空白や簡単なマークアップで表現します。

圧縮方式
–
透過
–
アニメーション
–
登場時期
–
TXT 変換

XML

Extensible Markup Language

XML は、1998 年に W3C が公開した、構造化データ向けのマークアップ言語です。属性を持つタグを入れ子にして記述し、スキーマ、名前空間、検証に対応しているため、複雑な文書でも堅牢に扱えます。RSS フィード、SVG、Office 文書、サイトマップ、企業や行政の多くのデータ交換の基盤になっています。JSON に比べると冗長ですが、どのプログラミング言語でも、また多くの表計算ツールでも読み込めます。

圧縮方式
–
透過
–
アニメーション
–
登場時期
1998 · W3C
XML 変換

区切り文字付きテキストをXMLにするのは、フラットな書き出しデータを、タグ付きレコードしか受け付けないシステムに取り込む必要がある場合です。たとえば、CMSやショップのインポート、設定ファイルのローダー、JSONが普及する前からXML前提で作られた連携先などが当てはまります。

TXTのXML変換に関するよくある質問

テキストファイルにヘッダー行は必要ですか?

ヘッダー行は必要です。ヘッダーの名前が、各値を囲む要素名になるためです。書き出したファイルがいきなりデータから始まる場合は、変換前にテキストエディタで先頭に sku|name|price のような行を追加してください。

外側の要素名をrecordsから変更できますか?

はい、変更できます。XMLルートタグには、先頭が英字またはアンダースコアで、その後に英字、数字、ドット、ハイフン、アンダースコアが続く名前を64文字まで指定できます。テキストファイルの各行は、その内側に行要素として書き出されます。

値に含まれる&や<の文字はどうなりますか?

XMLの仕様どおり &amp; や &lt; にエスケープされます。そのため、Smith & Sons のような会社名でもファイルが壊れることはありません。XMLパーサーはデータを読み込む際に、元の文字へ戻します。

XMLがテキストファイルよりかなり大きくなるのはなぜですか?

すべての値が、列名を繰り返した開始タグと終了タグで囲まれ、さらに整形して出力でインデントが加わります。元ファイルの数倍の大きさになるのは普通です。容量を抑えたい場合は整形して出力をオフにして、コンパクトな形で出力してください。

値を子要素ではなく属性として出力できますか?

いいえ。変換では各値を個別の子要素として書き出します。これは多くのインポートツールが受け付ける形式です。取引先が属性形式を指定している場合は、XSLTスタイルシートを使えば、変換後のファイルを一度の処理で整形し直せます。

古いWindowsソフトで作ったファイルです。アクセント付きの名前は文字化けしませんか?

変換前に文字コードを Windows-1252 に設定してください。古いWindowsのプログラムの多くは、UTF-8ではなくこのコードページで書き出していました。それでも名前が正しく表示されない場合は、もう一つの代表的な西欧向けコードページである ISO-8859-1 を試してください。