Properties 转 JSON 转换器
在浏览器中将 Java 的 .properties 文件转换为 JSON,也可以将 JSON 转换回 .properties。你的配置数据不会离开你的设备。
Java Properties ↔ JSON 完全在你的浏览器中运行。你粘贴的 .properties 文件和 JSON 不会离开你的设备,也不会上传到 ArrayKit。
打开 dotenv 转 JSON 转换器
关于 Properties 转 JSON
Java Properties ↔ JSON 会读取 Java 的 .properties 文件——Spring、Maven 以及众多 JVM 应用都使用的 key=value 配置格式——并将其转换为整洁的 JSON 对象,方便你接入现代化的配置流程。它会跳过空行以及以 '#' 或 '!' 开头的注释行,合并反斜杠续行,并解码值中的 \uXXXX 以及 \n \t \\ 转义。开启「展开点号分隔的键」后,像 db.host 这样带点号的键会自动嵌套为 db: { host } 对象;关闭该选项则保持点号键平铺不变。切换方向即可反向转换:JSON 对象会变成合法的 .properties 文本,嵌套对象会重新拍平为点号键,特殊字符也会被正确转义。该工具专为在旧版 properties 文件与基于 JSON 的工具之间迁移配置的 Java 和 Spring 开发者打造。所有处理都在本地完成——你的配置数据不会离开浏览器。
功能特性
- 一次粘贴即可将 Java 的 .properties 文件转换为 JSON 对象
- 将 JSON 对象转换回合法的 .properties 文本
- 将 db.host 这类点号分隔的键展开为嵌套的 JSON 对象
- 关闭嵌套选项以保持点号分隔的键平铺
- 跳过空行以及 '#' 或 '!' 开头的注释行
- 合并跨多行的反斜杠续行
- 解码值中的 \uXXXX Unicode 转义以及 \n \t \\
- 完全在浏览器中运行,不会上传任何配置数据
如何使用 Properties 转 JSON
- 保持选中「Properties → JSON」,粘贴你的 .properties 文件
- 根据需要打开或关闭「展开点号分隔的键(嵌套)」
- 复制 JSON 输出,或将其下载为 config.json
- 切换到「JSON → Properties」以反向转换
示例
输入
db.host=localhost
db.port=5432
输出
{
"db": {
"host": "localhost",
"port": "5432"
}
}
开启嵌套后,db.host 这样的点号键会展开为嵌套的 db 对象。
常见错误与故障排除
- db.host 这样的点号键在 JSON 中仍然是平铺的,没有嵌套。 — 开启「展开点号分隔的键(嵌套)」,让以 '.' 分隔的键转换为嵌套对象;如果你想让每行只保留一个平铺的键,则保持关闭状态。
- 「JSON → Properties」提示 JSON 必须是一个对象。 — .properties 文件本质上是一组键值对,因此输入的顶层必须是单一的 JSON 对象,不能是数组,也不能是孤立的字符串或数字。
- .properties 文件中的多行值被截断了。 — 在第一行末尾加上一个未转义的反斜杠,转换器就会像 Java 的 Properties.load 那样,将它与下一行合并成一个逻辑值。
- 转换后带重音符号或非拉丁字符的内容显示不正确。 — properties 文件传统上使用 \uXXXX 转义来表示非 ASCII 文本。转换器会自动解码这些转义,因此请粘贴原始的转义 .properties 文本,而不是已经解码过的副本。
常见问题
- Java Properties ↔ JSON 转换器如何处理点号分隔的键?
- 开启「展开点号分隔的键(嵌套)」后,像 db.host=localhost 这样的键会变成 { "db": { "host": "localhost" } }。关闭该选项则会将字面键 "db.host" 保留为单个平铺属性。
- Properties 转 JSON 转换器支持 \uXXXX Unicode 转义吗?
- 支持。包含 \uXXXX 序列(Java 的 Properties 格式编码非 ASCII 文本的标准方式)的值会被解码为实际字符,\n、\t 和 \\ 转义也会一并处理。
- 我可以在 .properties 文件里用 ':' 或空格代替 '=' 吗?
- 可以。解析器同时支持 key=value、key:value 以及以空格分隔的 key value 三种写法,与 Java 的 Properties.load() 支持的三种分隔符风格一致。
- JSON 转 Properties 如何处理嵌套的 JSON 对象?
- 嵌套对象会被拍平为点号分隔的键,因此 { "db": { "host": "x" } } 会变成 db.host=x。数组以及其他非对象的值会被转换为其字符串表示形式。
- 这个工具会忽略 .properties 文件中的注释吗?
- 会。以 '#' 或 '!' 开头的行会被当作注释并跳过,这正是 Java 的 Properties 格式所识别的两种注释标记。
- 我的 .properties 文件或 JSON 配置会被上传到什么地方吗?
- 不会。Java Properties ↔ JSON 完全在你的浏览器中运行。你粘贴的 .properties 文本和 JSON 不会离开你的设备,也不会发送给 ArrayKit 或任何服务器。
相关工具
全部 ArrayKit 工具