Java/Spring .properties 与 JSON 双向转换,支持点号键嵌套、续行符和完整转义,全程浏览器本地
- 本地处理
- 分类 格式转换
- 适合 分享前检查文件类型、大小、元数据和明显不匹配信号。
转换结果显示在这里。这个工具能做什么
免费的 Java .properties 转 JSON 工具,也能反着转回去。把 Spring Boot 的 application.properties、log4j 配置或任意 key=value 文件粘进来,右边 立刻给出干净的 JSON;粘 JSON 也能生成可直接用的 .properties 文件。 解析器把大家最容易踩坑的地方都接住了:key=value 和 key:value 两种分隔、 # 和 ! 注释行、行尾一个反斜杠把值续到下一行,以及 Java Properties.load 认的 \n \t \uXXXX \= \: 这些转义。像 server.port、spring.datasource.url 这样的点号键,可以展开成嵌套的 JSON 树,也可以原样留成扁平字符串键, 一个开关随你切。反向转时,嵌套对象会扁平化回点号键,往返结果一致。 全部以纯 JavaScript 在标签页里运行,不上传,分享链接能还原你的输入和 选项。100% 浏览器本地。
工具细节
- 输入
- 文本 + 数值 + 结构化内容
- 页面会根据工具类型展示文本框、数值控件、文件选择或结构化输入。
- 输出
- 即时结果 + 复制
- 结果区优先给出可操作结果,支持项会显示复制、下载或可视化预览。
- 隐私
- 浏览器本地处理
- 主工具逻辑未发现外部 API 调用,输入通常留在当前标签页内处理。
- 保存 / 分享
- 可分享链接状态
- 关键设置会进入 URL,复制链接后别人能复现同一组参数。
- 性能预算
- 首屏 JS ≤ 9 KB
- 没有声明 WASM 依赖,适合快速打开和移动端使用。
- 适用场景
- 格式转换 · 程序员
- 分类和职业标签用于推荐相关工具、组织内链,并帮助用户快速判断是否适合当前任务。
怎么用
-
1. 输入
把内容粘贴或拖入工具面板。
-
2. 处理
点击按钮,在浏览器内本地处理,文件不上传。
-
3. 复制 / 下载
一键复制结果或下载到本地。
Properties ⇄ JSON 互转 适合怎么用
适合在上传、交付、归档、客服排查前使用,也适合任何文件离开本机前的本地复核。
适合文件任务
- 分享前检查文件类型、大小、元数据和明显不匹配信号。
- 上传、归档、接收或审核前整理混合文件夹。
- 敏感文件先留在浏览器里处理,不用交给账号型服务。
文件检查项
- 不要只凭扩展名判断真实文件类型。
- 文件发给客户、供应商或公开页面前,先看元数据。
- 复制、转换或导出结果确认前,保留原文件。
下一步可以接着做
这些入口会把当前任务接到更完整的工具链里。
真实使用场景
把 Spring Boot 应用从 .properties 迁到 JSON 配置
服务还在读 application.properties,但新的部署流程把配置以一个 JSON 块注入。把整个 properties 文件粘进来,保持点号键展开打开,你就拿到 能对上同一批 @ConfigurationProperties bean 的嵌套 JSON 树, server.port 和 spring.datasource.url 都落在该在的位置。直接复制进 values 文件,省掉手工翻译时悄悄漏掉一个键的麻烦。
把密密麻麻的老 properties 文件看成可读 JSON
一份 200 行的 log4j 或 Hibernate .properties,相关键按字母排而不是 按组排,扫起来很费劲。开着嵌套转一遍,点号键收成一棵树,每个 logging.level.* 或 hibernate.* 设置都归到同一个父节点下。结构一眼 就看清,不用再 grep 前缀。
从 JSON 给 Java 服务生成 .properties 文件
你在文档或 API 返回里把配置设计成了 JSON,但目标应用只认 java.util.Properties。粘进 JSON,切换方向,嵌套对象就扁平化成点号 键,等号和 unicode 也按规范转义好,给你一份 Java 读取器不用改就能 收的文件。
把两个环境配置都转成 JSON 后再对比
逐行比对 prod.properties 和 staging.properties 很吵,因为键的顺序 不一样。把每个都转成 JSON,粘进 JSON 格式化或 diff 工具,结构化的 比对会清清楚楚显示哪个数据库 URL 或功能开关变了,不被排序噪音干扰。
常见踩坑
以为数字和布尔会带类型转回来。.properties 把一切存成文本,所以 port=8080 转出来是字符串 "8080" 而不是数字 8080。工具是故意保持原样的,在你清楚类型的代码里再转。
忘了冒号也是分隔符。timeout:30 是合法赋值,键是 timeout、值是 30,不是一个叫 "timeout:30" 的键。如果你真要在键里写冒号,转义成反斜杠加冒号,解析器才不会把它当分隔符。
留了个多余的行尾反斜杠。一行以 \ 结尾会续到下一行,所以值末尾不小心多个反斜杠,会把下一行悄悄吞进这个值里。要在末尾保留一个字面反斜杠,写成 \\。
隐私说明
每一步,解析 .properties、展开点号键、转义以及扁平化回 JSON,都是浏览器 标签页里运行的纯 JavaScript。配置、键和密钥都不上传也不记录。唯一要注意: 分享链接会把你的输入和选项写进查询字符串,所以把链接粘到聊天里,对方 服务器的访问日志会留下这段文本。配置里有凭据时,请用复制按钮粘贴文本, 而不是分享网址。
常见问题
类似工具组合
做你这行的人, 还会一起用这些。