JSON 字符串反转义工具
在浏览器中把 JSON 字符串反转义还原成可读文本。解码 \n、\t、\"、\\ 与 \uXXXX,带或不带外层引号皆可。100% 私密,无需上传。
选项
什么是 JSON 反转义?
JSON 反转义是 JSON 转义的逆过程:它接收一个满是转义序列的字符串——\n、\t、\"、\\、\uXXXX——把每一个变回它所代表的字符,还原原始文本。转义让字符串可安全存入 JSON 文档,而反转义让存储的字符串重新可读。
这种需求在调试和数据工作中不断出现。你从结构化日志中复制一个字段,它满是 \n 和 \" 隐藏了真实消息——反转义揭示真正的多行文本。某个 API 把请求体作为字符串存储(JSON-in-JSON),你需要读取内层对象——反转义把 {\"a\":1} 变回 {"a":1}。某个老旧系统输出 ASCII 安全的内容,每个重音都变成了 \uXXXX——反转义还原出 café 和 résumé。每种情况下数据本身完好,但在解码前无法阅读。
本工具就是为这条解码路径而建,有三个优势。第一,它对外层引号很宽容:粘贴完整字面量或只粘贴转义内容,它都会做正确的事——因为转义字符串通常是脱离上下文复制的。第二,它能正确解码 \uXXXX,把代理对组合成 emoji 等正确的星平面字符,与合规 JSON 解析器一致,所以任何序列化器转义过的内容都能完美往返。第三,它 100% 在你的浏览器中运行,所以你解码的日志字段和负载——常含 PII 或密钥——绝不到达服务器。要事后重新转义,请使用我们的 JSON 转义 工具;要校验解码后的 JSON,请看 JSON 格式化。
// Escaped input (copied from a log, quotes optional)
User said: \"it works!\"\nSession ended.
// Unescaped output — readable again
User said: "it works!"
Session ended.
// \uXXXX and surrogate pairs decode too
caf\u00e9 \ud83d\ude00 -> café 😀
// JSON-in-JSON
{\"a\":1} -> {"a":1} 核心功能
完整的 JSON 转义解码
把完整的 JSON 转义集合——\n \r \t \b \f \" \\ \/ 和 \uXXXX——解码回它们的真实字符,与合规 JSON 解析器一致。任何序列化器转义的内容都能逐字节还原。
引号可选
粘贴带外层引号的完整字符串字面量,或不带引号只粘贴转义内容——工具会检测是哪一种并正确解码。非常适合从日志或文档中间复制出来的字符串。
正确的 Unicode 和 Emoji
\uXXXX 转义解码为它们的 Unicode 字符,连续的代理转义组合成正确的星平面字符——\ud83d\ude00 变成 😀,\u00e9 变成 é。不会出现损坏的码点。
清晰的错误报告
格式错误的输入——孤立反斜杠后跟不识别的字符,或不成对的引号——会显示明确的错误提示条,而非默默产出乱码,让你确切知道要修什么。
用「交换」验证往返
一个「交换方向」按钮就地翻转为转义模式并重新编码解码后的文本,让你在信任结果前确认 反转义 → 转义 返回原始字符串。
100% 基于浏览器的隐私
所有解码都在客户端运行——你反转义的日志字段和负载(常含 PII 或密钥)绝不离开浏览器。在 Network 面板验证:粘贴时零请求。
示例
从日志复制来的转义字符串
"User said: \"it works!\"\nSession ended."
一个带 \" 和 \n 的 JSON 转义日志字段。反转义它即可读到带真实引号的两行原始消息——正是当初所记录的内容。
读取 JSON-in-JSON 负载
{\"event\":\"signup\",\"user\":{\"id\":42}} 一个作为转义字符串存储的内层 JSON 对象。反转义会还原出真实的 JSON,便于你阅读或重新解析。无需外层引号——它们会自动补上。
解码 \uXXXX Unicode 转义
caf\u00e9 \ud83d\ude00 r\u00e9sum\u00e9
来自老旧系统的 ASCII 安全转义。反转义会把 \u00e9 还原成 é,把代理对 \ud83d\ude00 还原成 😀。
还原多行片段
function greet(name) {\n return \"Hi \" + name;\n} 一段被压平成单个 JSON 字符串的代码片段。反转义会还原真实换行,使其再次可读、可运行。
如何使用
- 1
粘贴转义字符串
输入或粘贴一个 JSON 转义字符串——带或不带外层双引号皆可。解码文本即时出现。点击「加载示例」试用转义日志行或 \uXXXX 编码字符串等样例。
- 2
阅读解码输出
转义序列变成真实字符:\n 变成换行,\" 变成引号,\uXXXX 变成 Unicode。如果输入格式错误,错误提示条会说明问题,便于你修正出错的反斜杠。
- 3
复制或验证结果
点击「复制」抓取可读文本,或把它送进 JSON 格式化校验。点击「交换方向」就地重新转义并确认往返与你的原始内容一致。
常见解码陷阱
像 \q 或 \x41 这样的无效转义
JSON 只识别 \n \r \t \b \f \" \\ \/ 和 \uXXXX。反斜杠后跟其它任何东西——\q,或 C 风格的 \x41——都不是合法转义,解码会失败。把 \x41 换成 \u0041,并移除本应是字面的多余反斜杠(字面反斜杠必须写成 \\)。
value: \q and \x41 // \q and \x hex are not valid JSON escapes -> error
value: \\q and \u0041 // literal backslash doubled; hex written as \u -> decodes
未转义输入中不成对的引号
当你粘贴裸内容(无外层引号)时,工具会在解码前把它包裹进引号。如果内容本身含一个未转义的双引号,包裹会被破坏,解码失败。把内部引号转义为 \",或改为粘贴完整带引号的字面量。
say "hi" there // interior unescaped " breaks auto-wrapping -> error
say \"hi\" there // interior quotes escaped -> decodes to: say "hi" there
期望一个未加倍的字面反斜杠
输入中单个反斜杠被解释为转义的开始。如果你实际想要字面反斜杠(例如 Windows 路径),它必须加倍写成 \\。普通字母前的孤立 \ 会触发无效转义错误。
path: C:\Users\Alice // \U and \A are invalid escapes -> error
path: C:\\Users\\Alice // doubled backslashes -> decodes to C:\Users\Alice
常见用例
- 解码结构化日志字段
- 从 JSON 日志行复制一个满是 \n 和 \" 的消息字段并反转义它,读到当初输出时的真实多行消息,而不必费力辨认转义序列。
- 读取 JSON-in-JSON 负载
- 把一个作为转义字符串字段存储的内层 JSON 对象还原成真实 JSON,便于你阅读或粘贴进解析器——在 webhook 信封和审计日志中常见。
- 从 ASCII 安全输出还原 Unicode
- 把老旧系统大量含 \uXXXX 的输出解码回带重音的字母、CJK 字符和 emoji,还原被强制为纯 ASCII 的数据的人类可读形态。
- 还原被压平的代码片段
- 把一段被折叠成单个 JSON 字符串(每个换行都是 \n)的脚本或查询还原成格式正确、多行、可读的代码。
- 调试双重编码的数据
- 当一个值看起来像 \\n 或 \\\" 时,反转义一次以检查它是否在上游被意外转义了两次,然后修正生产方——一个常见的集成 bug。
- 检查 API 错误消息
- 许多 API 把错误详情作为转义字符串返回在 JSON 信封内。反转义该消息以读取那些原本被转义序列隐藏的堆栈跟踪和嵌套负载。
技术细节
- 解码算法
- 本工具把输入解析为 JSON 字符串:如果它已被双引号包裹则按原样解码,否则先把原始输入包裹进引号,使裸的转义内容也能解码。每个识别的转义(\n \r \t \b \f \" \\ \/ \uXXXX)映射到它的字符;这与合规 JSON 解析器一致,保证任何序列化器转义的字符串返回到它的确切原始形态。
- 代理对重建
- 一个 \uXXXX 转义产出单个 UTF-16 码元。当一个高代理(\uD800–\uDBFF)紧跟一个低代理(\uDC00–\uDFFF)时,二者会被组合成一个基本多文种平面之上的码点——所以 \ud83d\ude00 解码为单个字符 😀,而不是两个损坏的半部。
- 校验与错误处理
- 如果输入含无效转义(反斜杠后跟不识别的字符,或格式错误的 \u 序列)或破坏包裹的不成对引号,解码会干净地失败并显示错误提示条,而非输出损坏的内容。合法输入总能产出确切的解码字符串;无效输入绝不产出误导性的部分结果。
最佳实践
- 带或不带引号粘贴——两者都行
- 不要浪费时间修剪外层引号。工具对 "hello\nworld" 和 hello\nworld 的解码完全相同,所以粘贴你复制到的任何东西——包括从更大文档中间截取的片段——直接读结果。
- 先反转义一次,再检查双重编码
- 如果解码输出仍显示 \n 之类的反斜杠序列,说明原文在上游被双重转义了。再反转义一次以确认,然后修正生产方,使它只转义一次而不依赖反复解码。
- 校验解码后的 JSON
- 反转义一个 JSON-in-JSON 负载后,把结果送进我们的 JSON 格式化 以确认它有效并美化它。反转义还原文本;格式化确认结构。
- 用「交换」验证往返
- 点击「交换方向」重新转义解码后的文本,检查它是否与你起初的字符串一致。不一致指向格式错误的输入或意外的转义,在问题扩散前暴露数据隐患。
常见问题
这个 JSON 反转义工具有什么用?
我需要包含外层双引号吗?
我的数据会被上传到任何地方吗?
为什么我会遇到「无效的转义序列」错误?
如何读取一个作为字符串存储的 JSON 对象(JSON-in-JSON)?
它能正确解码 \uXXXX 和 emoji 吗?
相关工具
查看所有工具 →Base64 解码与编码工具
编码和格式化
免费在线 Base64 解码编码工具。实时转换,支持中文和 Emoji,100% 浏览器端运行,数据不离开设备,无需注册。
Base64 转图片转换工具
编码和格式化
在浏览器中把 Base64 字符串或 data URI 解码还原为图片。预览、读取尺寸与 MIME,再下载为 PNG、JPG、GIF、SVG。无需上传。
CSV 转 JSON 转换器
编码和格式化
在浏览器中将 CSV 转换为 JSON。支持 RFC 4180、类型推断、表头行、大整数安全。100% 隐私,无需上传。
HTML 转 Markdown 转换器
编码和格式化
在浏览器中将 HTML 转换为干净的 Markdown——支持 GFM 表格、任务列表和链接。可选 ATX/Setext 标题及内联或引用链接。非常适合迁移网页内容或喂给 LLM。100% 私密,无需上传。
图片转 Base64 转换工具
编码和格式化
在浏览器中将图片转换为 Base64 data URI——支持 PNG、JPG、GIF、WebP、SVG、ICO。一键复制 HTML、CSS、Markdown 和 JSON 输出。100% 私密,无需上传。
JSON Diff 对比
编码和格式化
在浏览器中即时对比两份 JSON。Side-by-Side 高亮 + RFC 6902 JSON Patch 输出,一键忽略 timestamps、IDs 等噪音字段。100% 隐私保护,零上传。