TOMLからXMLへの変換ツール
データをTOMLからXMLに入力と同時に変換します。処理はブラウザ内で行われます。
このツールはすべてのデータをデバイス上でローカルに処理します。
入力
出力
Readme
これらのデータ形式とは?
プログラムは、設定、レコード、リストなどの構造化データを、それぞれ独自の方法で記述するテキスト形式で保存・交換します。あるプログラムが出力した形式を別のプログラムが読み込めない場合や、目的に応じて読みやすく編集しやすい形式にしたい場合に、コンバーターが役立ちます。
| 形式 | データの記述方法 | 使用例 |
|---|---|---|
| JSON | 波括弧でオブジェクト、角括弧でリストを囲み、テキストを二重引用符で囲む | Web APIやアプリの設定 |
| YAML | インデントしたkey: valueの行。リスト項目は-で始まる |
Docker Compose、Kubernetes、CIパイプラインのファイル |
| XML | 属性を持つこともできるタグで要素を囲む | ドキュメント、RSSフィード、SOAP Webサービス |
| TOML | [table]ヘッダーの下にkey = valueの行を記述 |
Cargo.tomlやpyproject.tomlなどの設定ファイル |
| TOON | インデントした行。レコードのリストはフィールドの下に行として記述 | AI言語モデルに送信する構造化データ |
| CSV | ヘッダー行の後にレコードごとに1行ずつ記述し、値をカンマで区切る | スプレッドシート、データベースのエクスポート |
| TSV | CSVと同様だが、値をタブで区切る | スプレッドシートからコピーしたセル |
| MessagePack | ここでは16進数のバイト列で表すバイナリデータ | プログラム間でやり取りするコンパクトなメッセージ |
| JSON5 | コメント、単一引用符、引用符なしのキーも使えるJSON | 手書きの設定ファイル |
| JSONL | 1行に1つのJSON値を記述する形式。JSON LinesまたはNDJSONとも呼ばれる | ログ、データセット |
| INI | [section]ヘッダーの下にkey = valueの行を記述 |
php.iniなどのプログラム設定ファイル |
| Properties | ドット区切りのキーを使ったkey = valueの行 |
Spring Bootのapplication.propertiesファイルなどのJavaアプリ |
ツールの説明
このツールでは、JSON、YAML、XML、TOML、TOON、CSV、TSV、MessagePack、JSON5、JSONL、INI、Java propertiesの12種類の形式間でデータを変換できます。ここにあるデータ形式コンバーターは、汎用のデータ形式コンバーターも、JSONからYAML、CSVからJSON、XMLからJSONなど、形式の組み合わせごとのコンバーターも、すべて同じように動作します。ツール名にある形式が最初に選択されており、「ソース」と「ターゲット」のメニューから別の形式に切り替えられます。データを貼り付けるか入力すると、構文ハイライト付きのコードエディターに結果が入力と同時に表示され、コピーできる状態になります。入れ替えボタンを押すと変換方向が逆になり、結果が新しい入力になります。
入力がソース形式として無効な場合、エラーメッセージに問題の内容が表示されます。通常は問題の行と列も示されます。
データはブラウザー内で変換され、アップロードされることはありません。
例
このJSONは、
{
"users": [
{ "id": 1, "name": "Ann", "admin": true },
{ "id": 2, "name": "Bo", "admin": false }
]
}次のYAMLになります。
users:
- id: 1
name: Ann
admin: true
- id: 2
name: Bo
admin: falseユーザーごとに1行となる次のCSV、
id,name,admin
1,Ann,true
2,Bo,falseおよび次のTOONにも変換されます。
users[2]{id,name,admin}:
1,Ann,true
2,Bo,false形式間の対応
形式によって保持できるデータの種類は異なるため、変換には次のルールが適用されます。
- CSVとTSVは表形式のデータを保持します。最初の行が列名になり、それ以降の各行はオブジェクトになります。ネストされたオブジェクトはパスを含む列名になり、リストはセル内のJSONテキストになります。そのため、
{"name": "Ann", "address": {"city": "Oslo"}, "tags": ["a", "b"]}は、name、address.city、tagsの列になります。変換して戻すと、これらの列は再びネストされたオブジェクトとリストになります。{"users": [...]}のように1つのリストを持つオブジェクトの場合、行はそのリストの項目になります。また、リストのリストはヘッダーなしの行になります。 - テキスト値:CSV、TSV、XML、INI、propertiesが保持できるのはテキストのみです。そのため、コンバーターは
trueとfalseを真偽値に変換し、42や3.5のように通常の形式で書かれた数値を数値に変換します。007、1.50、1e3などの値はテキストのままなので、郵便番号やバージョン番号の表記はそのまま保たれます。 - XMLの属性は
@で始まるキーになり、属性を持つ要素のテキストは#textになります。<price currency="USD">44.95</price>は{"@currency": "USD", "#text": 44.95}になります。同じ名前の要素が繰り返される場合はリストになります。XMLに変換すると、@で始まるキーは再び属性になります。値がリストではない単一のキーを持つオブジェクトは、ルート要素になります。それ以外のデータは<root>要素の中に入り、最上位のリストの各項目は<item>要素になります。スペースなど、XML名に使用できない文字は_になります。 - TOML、INI、propertiesで保持できるのは、最上位にある名前付きの値のみです。そのため、リスト形式のデータは
itemsという名前の下に、単一の値はvalueという名前の下に記述されます。TOMLにはnullがないため、null値は省略されます。 - INIでは、ネストされたオブジェクトは
[server.ssl]のようなセクションとして、値のリストはkey[] = valueの行として、オブジェクトのリストは[users.0]のように位置を示す名前のセクションとして記述されます。 - Propertiesでは、ネストされた名前をドットでつなぎ、リスト項目を
app.hosts[0]のように角括弧内の番号で表します。これはSpring Bootの記述方法に準じています。YAMLまたはJSONに変換すると、これらのキーはネストされたオブジェクトとリストになります。そのため、application.propertiesファイルはapplication.ymlファイルと同じ構造に変換されます。Latin-1以外の文字は\uエスケープで記述されます。 - YAMLへの変換結果では、YAML 1.1のパーサーが別の値として解釈するテキスト(
on、yes、日付など)は引用符で囲まれます。これにより、YAML 1.1とYAML 1.2のどちらのパーサーでも同じデータが得られます。---で区切られた複数のドキュメントを含むYAMLファイルは、それらを要素とするリストになります。また、<<マージキーも展開されます。 - MessagePackはバイナリ形式のため、ツールでは16進数のバイト列として読み書きします。
{"a": 1}は81 A1 61 01になります。入力にはスペースやカンマを含めることができ、各バイトの前に0xを付けることもできます。複数のメッセージを連続して入力すると、リストになります。 - JSONLへの変換結果では、リストの各項目がそれぞれ別の行になります。
- 64ビットIDのようにJavaScriptの数値で正確に表せない整数も、すべての桁が保持されます。
- TOMLの日付と時刻、およびMessagePackのタイムスタンプは、
1979-05-27T07:32:00Zのようなテキストになります。
ヒント
- スプレッドシートのセルを変換するには、セルをコピーしてTSVとして貼り付けてください。スプレッドシートアプリでは、セルはタブ区切りテキストとしてコピーされます。
- CSVとTSVは、似た形式のレコードを並べたリストに適しています。深くネストされたデータは、YAML、TOML、TOONのほうが読みやすくなります。
- YAML、XML、TOML、JSON5、INI、propertiesファイル内のコメントは保持されません。コンバーターが引き継ぐのはデータのみです。
コメント
Protected by Cloudflare Turnstile
コメントを読み込み中...
ツール情報
作成日
最終更新日
タグ
toml to xmltomlxmldata formatdata converterserializationconfig file
類似ツール
JSON、YAML、XML、TOML、TOON、CSV、TSV、MessagePack、JSON5、JSONL、INI、Javaプロパティの間でデータを入力と同時に変換します。処理はブラウザ内で行われます。
データをXMLからTOMLに入力と同時に変換します。処理はブラウザ内で行われます。
データをJSONからXMLに入力と同時に変換します。処理はブラウザ内で行われます。
提供
埋め込み
このツールを無料でどこにでも埋め込めます。ヘルプが必要ですか? ガイドをご覧ください.
免責事項
このウェブサイトで提供されるツールは、ユーザーがさまざまな問題を解決するのを支援するために設計されています。ツールの正確性と有効性を確保するために努力していますが、いかなるツールの出力も100%正確またはエラーがないことを保証または保証しません。これらのツールによって生成される結果は現状のままで提供され、注意して使用する必要があります。重要な情報または結果については、追加のリソースまたは専門家のアドバイスで検証することをお勧めします。これらのツールの使用から生じる結果の正確性と使用に関する結果から生じるいかなる結果についても、当社は責任を負いません。このウェブサイトを使用することにより、提供される結果の正確性と使用に関連するすべてのリスクを引き受けることに同意します。