什么是 JSON 格式化工具
“JSON 格式化”是一款功能强大的在线工具,旨在帮助用户对 JSON 数据进行格式化、校验和压缩。无论您是需要将杂乱无章的配置数据整理得井井有条,还是需要对 API 响应进行快速排查,本工具都能提供直观且高效的解决方案。
用户可以直接在输入区域中“粘贴你的 JSON”,也可以通过点击“打开文件”按钮或直接拖拽来载入 .json 或 .txt 文件。工具支持对数据进行不同缩进级别的格式化排版,去除无用字符以进行压缩,或者对键名进行排序。此外,工具还提供了交互式的“树形”视图,方便用户层层探索复杂的 JSON 结构,并支持复制特定路径或直接下载处理后的结果。
导入与文件限制
在使用本工具导入数据时,请注意以下规则与系统限制:
- 文件格式与编码:工具仅支持
.json或.txt文件。如果选择了其他格式,系统会提示“不支持的文件类型,请选择.json 或.txt 文件。”。同时,文件必须采用 UTF-8 编码,否则会触发“该文件不是 UTF-8 文本,无法在这里打开。”的提示。 - 文件大小与读取限制:工具的最大输入限制为 10 MiB。如果文件超过此限制,将无法打开并显示“文件太大,上限为
‹limit›。”。若输入内容超过系统处理极限,则会提示“输入超过‹limit›,超出了本工具能处理的范围。”。如果文件在读取时发生未知错误,会显示“无法读取该文件。请重新选择一次。”。 - 性能与超时:为了保证浏览器的响应速度,本工具的同步处理阈值为 250,000 个字符。如果校验 JSON 的时间过长,系统会中止操作并提示“校验该 JSON 耗时过长,已被中止。请改用更小的文档。”。
语法校验与常见错误定位
当您粘贴或载入数据后,工具会自动进行实时校验。如果 JSON 有效,状态栏会显示“JSON 有效”;若数据存在语法问题,则会显示“JSON 格式无效” [接口] 并精准指出错误位置,例如“第 ‹line› 行,第 ‹col› 列”,用户可点击“跳转到错误”按钮快速定位。
本工具能够识别并指出以下具体的 JSON 语法错误:
- 条目之间缺少逗号
- 收尾括号前多了一个逗号
- 对象的键必须用双引号包裹
- 属性名后缺少冒号
- 有一个字符串缺少收尾引号
- JSON 提前结束,看起来被截断了
- 应为值的位置出现了意外字符
- 该 JSON 嵌套太深,无法处理
- 键
‹key›重复,请先删除一个再格式化(本工具在遇到重复键时会直接报错,而不会默默合并或丢弃数据)。
非标准 JSON 的检测与自动修复
除了严格的语法校验,本工具还能智能检测多种常见的非标准 JSON 变体,并提供一键修复方案:
- Markdown 代码围栏:检测到“这看起来是包在 Markdown 代码围栏里的 JSON。”,应用修复时“应用后只保留围栏内的 JSON。”。
- 转义字符串:检测到“这看起来是被转义成字符串的 JSON。”,应用修复时“应用后会把字符串解转义为普通 JSON。”。
- Python 字典:检测到“这看起来是 Python 风格的字典,而不是 JSON。”,应用修复时“应用后会把引号和 True/False/None 改写为 JSON。”。
- JSON Lines:检测到“这看起来是 JSON Lines——每行一个值。”,应用修复时“应用后会把各行包装成一个 JSON 数组。”。
- JSONP 回调:检测到“这看起来是被 JSONP 回调包裹的 JSON。”,应用修复时“应用后会移除回调包装。”。
- JSONC 格式:检测到“这看起来是 JSONC——含注释或尾逗号。可把语法切换为 JSONC,或应用修复。”,应用修复时“应用后会移除注释和尾逗号。”。
用户可以点击“预览修复”查看“原文”与“修复后”的对比。在“修复预览”窗口中,如果修改范围过大,会提示“预览已截断——修复会作用于整个文档。”。确认无误后点击“应用修复”即可,系统会提示“已应用修复。按 Ctrl/Cmd+Z 可撤销。”。若无法自动处理,则会提示“无法自动修复此输入。”。
视图模式与数据探索
本工具提供“代码”和“树形”两种视图来展示数据:
- 代码视图:以纯文本形式展示 JSON。在此视图下,您可以选择不同的“缩进”级别进行“格式化”或执行“压缩”。此外,点击“键排序”可以“递归按码位顺序对对象键排序,数组顺序保持不变。”。排序完成后会提示“键已排序——数组顺序不变。按 Ctrl/Cmd+Z 可撤销。”。本工具在处理时会完好保留大整数,确保数据无损。
- 树形视图:提供交互式的“JSON 树形”结构。如果 JSON 无效,该视图会提示“JSON 有效后才能查看树形视图。”;若数据体量过大,则会提示“该 JSON 太大,无法渲染为树形视图。”或“该 JSON 的值太多,无法渲染为树形视图。”。
- 树形操作与搜索:在树形视图中,用户可以使用“全部展开”和“全部折叠”功能。对于超大型 JSON,展开时会受到限制并提示“该 JSON 太大,无法完全展开,只显示前
‹count›行。”,用户可点击“再显示‹count›项…”逐步加载。您还可以通过“搜索键和值”框进行检索,系统会显示匹配进度(如“第‹current›个,共‹total›个”或带限制的“第‹current›个,共‹total›+ 个”),并提供“上一个匹配”和“下一个匹配”按钮。 - 节点复制:在树形视图的“root”根节点或任意子节点上 [接口],点击“
‹key›的复制选项”菜单,可以选择“复制值”、“复制 JSON Pointer”或“复制 JSONPath”。
隐私安全说明
你的 JSON 会在浏览器本地处理,不会上传到 BroBroGo [接口]。所有的格式化、校验、压缩和修复逻辑均在您的本地浏览器内安全运行 [接口]。
常见问题
我的 JSON 会被上传吗?
不会 [接口]。格式化逻辑在你的浏览器里运行,不会上传你的 JSON [接口]。
压缩 JSON 是什么意思?
压缩会移除多余空格和换行,但不会改变 JSON 数据本身 [接口]。