Data Format Converter
Конвертуй між JSON, YAML, TOML, XML і CSV. Автовизначення, pretty-print, inline-помилки. Усе в браузері.
Про цей інструмент
Data Format Converter перекладає між п'ятьма щоденними config- і data-interchange-форматами: JSON, YAML, TOML, XML і CSV. Вставте будь-який, і інструмент авто-детектить input-формат, парсить і re-emit-ить у target-форматі з правильним екрануванням і pretty-printing. Parse-помилки показано inline з line/column, тож ви знаєте точно, що виправити.
Кожен формат має свої quirks. JSON — найнижчий спільний знаменник — strings, numbers, booleans, arrays, objects. YAML додає коментарі, multi-line strings і references. TOML — JSON з config-friendly surface-синтаксисом (sections, comments, dates). XML додає attributes і namespaces, що не транслюються чисто в інші. CSV — табличний і round-trip-ить лише в shape «array of flat objects» source. Інструмент маркує lossy-конверсії перед застосуванням.
Коли використовувати цей інструмент
- Міграція config-файлів. Helm chart у YAML, що споживатиметься Terraform-модулем, який хоче JSON — вставте і конвертуйте.
- Швидка інспекція CSV. Вставте spreadsheet-експорт, отримайте чистий JSON-масив для feed у test-suite.
- YAML / TOML interop. Ті самі config-значення, різні surface-синтаксиси preferences через team-members.
- Дебаг XML API. Конвертуйте SOAP-відповідь у JSON, щоб прочитати її без потопання в angle-bracket.
Про lossy-конверсії
JSON → YAML і назад — lossless для plain-data. XML → JSON втрачає відмінність між attributes і child-elements (ми мапимо attributes на ключ@attr, що конвенція, не стандарт). CSV → JSON вимагає, щоб перший рядок був заголовками (toggle), і припускає flat-records — nested-об'єкти не представляються. Інструмент попереджає, коли round-trip не буде byte-identical, тож ви можете прийняти або обрати інший target.
Часті запитання
Чому мій YAML не парситься?
key:value vs key: value); відсутні quotes навколо значень, що містять : або #; tabs змішані з пробілами. Parse-error message включає line/column, тож знайдете offending-символ швидко.
Чи можна конвертувати XML з attributes?
@ при конверсії в JSON / YAML / TOML. <item id="1">text</item> стає { "item": { "@id": "1", "#text": "text" } }. Це конвенція (використовується Badgerfish, JsonML-варіантами) — не один стандарт. Конверсія назад у XML відбудовує оригінальну структуру. Mixed-content (текст і елементи перемішано) — lossy-випадок; ми його маркуємо.