浏览器本地处理

JSON / Properties 互转

把嵌套对象展平为点分隔属性键,并处理反斜杠、换行、制表符和分隔符转义;导入时重新建立对象路径,值保持字符串。

浏览器本地处理
0 / 1,000,000
转换结果

工具指南

什么是JSON / Properties 互转?

JSON 与 Properties 互转用于 Java 应用、资源配置和通用键值清单。嵌套对象会展开为点分隔路径,常见反斜杠、换行、制表符和分隔符会按属性规则转义;反向转换重新建立对象结构,同时保留值为字符串以避免不可靠的类型推断。常见使用场景包括:把嵌套 JSON 配置导出为属性键清单。;把 Java Properties 内容转成便于检索的 JSON。;检查冲突路径、重复键和特殊字符转义。页面同时列出输入边界、输出规则和限制,便于在复制结果或投入实际流程前核对格式、语义与安全注意事项。

适用场景

  • 把嵌套 JSON 配置导出为属性键清单。
  • 把 Java Properties 内容转成便于检索的 JSON。
  • 检查冲突路径、重复键和特殊字符转义。

使用方法

  1. 粘贴 JSON 对象或属性文本。
  2. 检查点号是否应表示嵌套路径。
  3. 执行转换并查看冲突键错误。
  4. 复核数组文本和字符串类型后复制。
  5. 先使用页面提供的复杂示例验证当前选项和运行方向,再替换为自己的数据。
  6. 检查输出区、状态提示和限制说明,确认结果符合预期后再复制、下载或继续处理。

可运行示例

工作区中的“示例 1”和“示例 2”按钮会载入对应内容。两个示例覆盖不同结构、方向或边界,可以直接运行并观察输出与状态提示。

示例 1

{"app":{"name":"JSONLane","locale":"zh-cn"},"build":{"branch":"develop","tools":40},"ports":[80,443]}

示例 2

app.name=JSONLane
app.locale=zh-cn
build.branch=develop
build.tools=40
message=第一行\n第二行

输入规则

  • JSON 根值必须是对象。
  • Properties 有效行需要明确的等号或冒号分隔符。
  • 点路径冲突、重复键和危险键会被拒绝。
  • 文本输入在运行前按字符计数,当前页面上限为 1,000,000;文件类功能另按页面显示的文件上限执行。
  • 点号键会被解释为嵌套路径。

输出规则

  • 嵌套对象使用点号路径展开。
  • 数组导出为单元格中的 JSON 文本。
  • 导入值保持字符串,不自动恢复数字或布尔值。
  • 输出只反映当前输入、方向和选项;切换模式或修改输入后应重新运行,不应把旧结果当成新结果。
  • 数组导出为 JSON 文本,值类型不会自动恢复。

限制与注意事项

  • 点号键会被解释为嵌套路径。
  • 数组导出为 JSON 文本,值类型不会自动恢复。
  • 不支持续行和所有 Java Properties 历史编码细节。

数据处理说明

属性键展开、转义扫描和对象重建均只发生在当前标签页内,不会读取工程配置或上传输入。关闭或刷新页面后,本工具不会保留本次数据。

FAQ

转换会上传Properties内容吗?

不会。解析、转换和结果生成都在当前浏览器标签页内完成。

能保证完全无损往返吗?

不能。不同格式的类型、注释、顺序和二进制能力不同,页面会说明主要损失点。

为什么某些输入会被拒绝?

工具会拒绝不安全整数、危险键、过深结构或目标格式无法明确表示的值,避免静默改写。

点号键如何处理?

导入时点号被解释为对象路径;如果原键本身含点号,本版本无法无损区分。

支持 Unicode 转义吗?

导入支持常见的 \uXXXX,导出保留原 Unicode 字符以便阅读。

数组为何成为一段 JSON?

Properties 没有数组类型,使用 JSON 文本比逗号拆分更明确。

更新日期: 2026-08-09