Properties 转 YAML

Properties 转 YAML 工具,把 Java .properties / i18n 资源文件直接转换成层次清晰的 YAML 配置。完整支持反斜杠续行、# / ! 注释、\uXXXX 与 = / : / 空白三种键值分隔符,点号路径自动还原为嵌套结构,也可以按需做数字 / 布尔类型推断。转换在浏览器本地的 Web Worker 中完成,配置内容不外传。

在工作台中打开 本地处理 · 数据不上传

怎么使用

  1. 1

    粘贴 Properties 文本

    支持 server.host=localhost 这类点号路径、反斜杠续行,以及 # / ! 开头的注释行。

  2. 2

    设置分隔符与选项

    路径分隔符默认点号;可选开启类型推断(8080、true 还原为数字 / 布尔),并选择 YAML 缩进 2 或 4 空格。

  3. 3

    复制 YAML

    右侧即时得到嵌套 YAML,复制即可用于 K8s、CI 或应用配置文件。

功能特点

一步直达 YAML

不必先转 JSON 再转 YAML,Properties 直接输出符合 YAML 1.2 的文本,可被标准解析器读取。

JDK 词法精确实现

严格按 java.util.Properties 规则解析:续行折叠、前导空白处理、\t \n \uXXXX 等转义全部支持。

路径还原嵌套层级

server.host 与 server.port 自动归入同一个 server 映射,点号 / 冒号 / 斜杠 / 连字符分隔符可配置。

转义键名不误拆

键名中的 \. 与 \\ 按路径层与词法层两层转义精确还原,含点号的键不会被错误拆成多级。

非法输入有提示

空内容、仅含注释无键值对、路径冲突(a 与 a.b 并存)都会给出明确的中文错误原因,不会崩溃。

常见错误与排查

  • ! # 和 ! 开头的行会被当作注释;键名若以这些字符开头,源文件中需用反斜杠转义。
  • ! 物理行尾的单个反斜杠表示续行,下一物理行的前导空白会被一并忽略。
  • ! 值看起来是数字但需要保留文本(如版本号 0.1.0)时,请关闭类型推断,避免被当作数字处理。
  • ! YAML 缩进只能使用空格,Tab 在 YAML 中非法;本工具输出始终使用空格。

常见问题

点号分隔的键一定会变成嵌套映射吗?

默认会:a.b.c 还原为 {a:{b:{c}}},再输出为嵌套 YAML。如果键名本身含点号,源文件中应写为 a\.b,工具会识别转义把它当作字面点号,不会拆层。

\uXXXX 转义和中文怎么处理?

按 JDK 规则解码为对应 Unicode 字符,直接输出 UTF-8 中文,YAML 中无需转义;反斜杠续行、\t、\n 等转义同样会被还原。

提示路径冲突是什么意思?

例如同时存在 a=1 和 a.b=2:a 既要是标量又要是映射,结构上无法同时成立。请检查键名,必要时改用不同的分隔符或重命名。

转换时我的数据会上传吗?

不会。解析与序列化都在浏览器本地的 Web Worker 中完成,没有服务器参与,配置文件、密钥这类敏感内容可以放心粘贴。

相关工具