這個工具的用途
將 JSON 轉為美化的 XML,可指定根元素與選用的 XML 宣告。每個物件鍵對應一個元素、陣列重複父標籤、特殊字元會被逸出。在你的瀏覽器內運作。
使用步驟
貼上 JSON(或載入範例),指定根元素名稱,即可在右側讀到 XML。可設定美化排版與選用的 <?xml …?> 宣告。
輸入: {"service":"devsmiths","public":true}
輸出(XML):
<root>
<service>devsmiths</service>
<public>true</public>
</root>限制與邊界情況
- XML 輸出為單向(JSON → XML)。XML → JSON 為不同問題(有多種有效對應),不在 P1 範圍內。
- 對應方式僅使用元素:沒有屬性/元素的啟發式。每個鍵成為一個元素、陣列重複父標籤。
- 非有效 XML 名稱的 JSON 鍵(例如
foo bar、開頭為數字的名稱)會產生無效的 XML——請先清理再轉換。 - 若輸入為無效 JSON,請先用 JSON Repair。
- 為何 JSON 在傳輸上多半取代了 XML,請參閱 JSON vs YAML vs XML。
常見問題
- 我的資料會被傳送到伺服器嗎?
- 不會。每一次轉換都在你的瀏覽器內完成,頁面不會上傳 JSON 或輸出結果。
- 可以反向 YAML → JSON 嗎?
- 可以——開啟 /json/convert/yaml,切換「YAML → JSON instead」即可。CSV 與 XML 目前為單向(JSON → CSV / JSON → XML);架構支援反向模式,已在 roadmap 上。
- 巢狀物件在 CSV 中怎麼處理?
- 預設以點號攤平鍵(例如 user.address.city)。可切換為方括號(user[address][city]),或「stringify」把巢狀值保留為 JSON 編碼的單一儲存格。陣列會被 JSON-序列化成單一儲存格——CSV 的行列模型無法忠實表達任意巢狀。
- XML 輸出有遵循特定 schema 嗎?
- 沒有——它是直接、慣用的對應:每個物件鍵對應一個元素、陣列重複父元素、原始值成為被逸出的文字內容。沒有屬性/元素的啟發式——一律使用元素。若需要屬性風格 XML,相關選項在 roadmap 上。
- 為什麼 CSV 匯出器對我的輸入有意見?
- CSV 需要一個陣列(或單一物件)。根層級為純字串、數字或布林沒有行列結構。請把它包成物件陣列,或改用能處理任意 JSON 的 YAML / XML 變體。
- 可以處理 TSV、MessagePack 或 TOML 嗎?
- 還不行。分派層支援新的目標——已在 roadmap 上。若你有使用案例歡迎開立 issue。