JSON 转义

文本与 JSON 转义字符串互转。

什么是JSON 转义?

JSON 转义用于在“普通文本”和“JSON 字符串里的转义形式”之间互相转换。JSON 规范规定,字符串中的双引号、反斜杠、换行符等特殊字符不能直接出现,必须写成转义序列,例如英文双引号 `"` 要写成 `\"`,换行要写成 `\n`,反斜杠本身要写成 `\\`。这个工具做的就是这件事:把一段包含换行、引号等特殊字符的原始文本,转换成可以安全放进 JSON 字符串值里的转义文本;反过来,也能把已经转义过的字符串还原成人可读的原始文本。

为什么使用JSON 转义?

当你需要手动拼接一段 JSON(比如在 Postman 里写请求体、在配置文件里写一段多行文本、把一段代码或日志塞进 JSON 字段),如果不做转义,包含换行或引号的文本会直接破坏 JSON 的语法结构,导致解析报错。手动转义容易漏掉某个字符或转义两次,尤其是反斜杠本身也需要转义时最容易出错。 这个工具适合快速处理这类场景:把一段多行的日志文本转义后粘贴进 JSON 字段、把接口返回里一段转义过的字符串还原成方便阅读的原文、检查某段字符串在 JSON 里到底应该长什么样。整个转换过程在浏览器本地完成,不上传数据。

使用示例

原文转 JSON 转义

输入原文: 第一行 第二行,带"引号" 转义后得到:`第一行\n第二行,带\"引号\"`,可以直接作为 JSON 字符串值使用,如 `{"content":"第一行\n第二行,带\"引号\""}`。

转义还原成原文

输入转义文本 `C:\\Users\\test\\file.txt`,还原后得到 `C:\Users\test\file.txt`,方便直接复制到文件路径或终端命令中使用。

处理带制表符的文本

输入包含 Tab 缩进的代码片段,转义后 Tab 字符会变成 `\t`,可以完整保留代码的缩进结构后放进 JSON 字段,而不会因为原始制表符破坏 JSON 格式。

常见问题

这个工具是做什么用的?
把普通文本转成可以直接放进 JSON 字符串里的转义形式(换行变 \n、引号变 \" 等),或反过来把转义字符串还原成原文,常用于手写/调试 JSON 时处理含特殊字符的文本。
编码后的结果需要自己加引号吗?
需要,输出的是不带外层双引号的转义内容,粘贴到 JSON 中时记得自己补上一对双引号;解码时同理,输入不需要带外层引号。
数据会上传吗?
不会。转义与解码全部使用浏览器内置 JSON 对象在本地完成。
JSON 转义和 URL 编码是一回事吗?
不是。JSON 转义只处理 JSON 字符串语法要求的特殊字符(引号、反斜杠、控制字符等),URL 编码(如 `%20` 表示空格)是另一套规则,用于让文本安全出现在 URL 中,两者用途和规则都不同,不能混用。
为什么反斜杠要转义两次才对?
因为反斜杠本身在 JSON 里就是转义字符的引导符,所以一个原始反斜杠 `\` 在 JSON 字符串里要写成 `\\`(两个字符)才能被正确解析为一个反斜杠,这也是手动转义时最容易出错的地方。
中文字符需要转义吗?
不需要,JSON 标准支持直接使用 UTF-8 编码的中文字符,不必转成 `\uXXXX` 形式;只有控制字符、引号、反斜杠等少数几类字符才必须转义。
转义后的字符串直接粘贴进代码能用吗?
可以,转义规则遵循 JSON 标准(与 JavaScript 字符串字面量规则基本兼容),转义结果通常可以直接嵌入到 JSON 文件或大多数编程语言的字符串字面量中使用。

相关工具

← 返回工具箱· 数据均在浏览器本地处理,不上传服务器。