FormatConvert 等待输入 转换全部在本地完成,内容不出浏览器

输入

输出

转换结果会出现在这里。

转换选项 只影响对应格式的输出

JSON 与 XML 用
输出 XML 时,若对象不是「恰好一个键」就用它当根元素
properties 输出用
「非 ASCII 转义」按 Java 规范把中文写成 \u4F60;Spring Boot 2.4+ 默认按 UTF-8 读,可以不勾。
「点号展开」只影响 properties → 其它格式:勾上后 a.b=1 会变成 {"a":{"b":"1"}}; 不勾则保持扁平的键(键里本来就有点的场景更安全)。

格式与映射约定 转换有损的地方都写在这里

格式特点会丢的东西
JSON 对象 / 数组 / 字符串 / 数字 / 布尔 / null。解析失败会给出行列位置。 Infinity 与 NaN 会被写成 null(页面会给出警告);undefined 字段会被丢掉。
YAML 按 JSON 兼容 schema 解析:日期、.inf 这类不会被特殊处理,保持原样,避免转 JSON 时静默变样。 注释全部丢失(YAML 的 # 注释、锚点与别名 &a / *a 展开后不再保留);多文档只取第一份。
XML 用浏览器原生解析器,非良构时给出行列位置。映射约定见下表。 注释、处理指令、CDATA 边界、命名空间前缀(保留为标签名的一部分)、属性顺序。
properties 支持 = / : / 空格三种分隔符、\ 续行、\uXXXX 与 \n\t\\ 转义、# 与 ! 注释。键前后的空白会去掉。 值一律是字符串(port=8080 出来是 "8080" 不是数字);注释丢失;重复键只留最后一个;值末尾的空白按 Java 规范保留(a=x␣␣ 的值是 "x ")。

XML ↔ JSON 的映射约定

XMLJSON说明
<n id="1">x</n>{"n":{"@id":"1","#text":"x"}}属性加 @ 前缀;文本放 #text
<n>x</n>{"n":"x"}既无属性又无子元素时直接给字符串
<l><i>1</i><i>2</i></l>{"l":{"i":["1","2"]}}同名子元素重复出现 → 数组
<root>…</root>{"root":{…}}根元素会被包成一层键,这样 XML → JSON → XML 能原样回去
YAML 由本机 vendor/js-yaml-4.1.0.min.js 解析(本地优先,缺失时回退锁版本的 CDN); JSON 用浏览器原生 JSON.parse,XML 用原生 DOMParser,properties 是本页自写解析器 —— 其余三种格式零外部依赖。