HTML 实体编解码
把 < > & 等字符编码为 HTML 实体,或把命名实体与数字实体还原为原文。可选「仅编码五个基本字符」或「同时编码全部非 ASCII 字符」,全程本地处理,粘贴即转。
使用说明
- 在顶部选择「编码」或「解码」:编码把文本中的特殊字符转为实体,解码把实体还原为可读文本。
- 编码默认只转义 < > & " ' 五个基本字符以保留可读性;若选择「同时编码全部非 ASCII」,中文、Emoji 等字符也会转为 &#数字; 形式的数字实体。
- 解码支持常见命名实体(如 © →)以及十进制、十六进制数字实体,未知名称会原样保留。
- 点击「互换」可把结果移回输入框并自动切换方向,方便反复校验;「示例」可载入演示文本。
- 所有转换均在浏览器本地完成,内容不会上传,可放心处理含敏感信息的 HTML 片段。
常见问题
为什么只推荐编码五个基本字符?
命名实体与数字实体有什么区别?
解码会不会出现双重解码或误解码?
我的内容会上传到服务器吗?
使用步骤
- 选择编码或解码方向
在顶部操作栏点「编码」或「解码」:编码把特殊字符转成实体,解码把命名与数字实体还原成可读文本。
- 按需选择编码范围
默认仅转义 <、>、& 与引号五个基本字符,输出简洁可读。点「同时编码全部非 ASCII」,中文与 Emoji 也会转成数字实体。
- 粘贴文本一键转换
把要处理的文本粘进输入框,点「编码」按钮,结果立即出现在下方输出区。全程本地完成,不上传。
- 用互换做往返校验
点「互换」按钮,结果会移回输入框并自动切换方向。用它验证解码能否完整还原原文,排查转义问题很方便。
- 复制结果直接使用
点输出区右上角的「复制」按钮拿到结果,直接粘回模板、CMS 富文本或代码示例,无需手动选取。
工具详细介绍
< 和 & 这类字符在 HTML 里有特殊含义,直接写进页面会被浏览器当成标签解析。HTML 实体就是安全表示这些字符的写法。手工书写实体繁琐又易错,本工具在文本与实体之间双向转换,粘贴即出结果,支持完整命名实体表与十进制、十六进制数字实体。
适合在博客代码块里展示 HTML 源码,或向 CMS 富文本插入含特殊符号的内容。模板把标记转义过头或漏转义时,也可以用它排查。处理中文与 Emoji 就勾选「同时编码全部非 ASCII」,一并转为数字实体,兼容老旧系统。
原理与背景
命名实体继承自 SGML 的实体引用机制。HTML 4.01 只定义了 252 个命名实体,HTML5 扩充到 2200 多个,覆盖希腊字母、数学符号、箭头与图形符号。除名字写法外,任何字符都能写成数字形式:十进制 & 与十六进制 & 指向同一码位,不依赖名称表。数字写法的兼容性最好,实体写法更长,解析后语义完全等价。XML 规范出于精简只预定义五个实体,本工具默认转义的五个基本字符正来自这条规定。
转义顺序里藏着一个小陷阱:编码时要先处理 & 字符本身,再处理其余字符。顺序颠倒的话,新生成的实体名会被二次转义成双重实体,往返转换就回不到原文。勾选「同时编码全部非 ASCII」后,中文与 Emoji 会变成 你 这类十六进制数字实体。整段输出落在纯 ASCII 区间,能安全穿过只认单字节编码的老系统与邮件网关,解码时按实体表反向还原即可。
典型使用场景
- 清理抓取文本里的残留实体
爬虫抓到的正文常带 、& 这类未还原的实体。解码一遍就得到干净文本,再进入分词、翻译或入库等后续环节。
- 排查富文本的双重转义
CMS 页面显示出 < 这样的字符而不是括号,说明存储或模板层多转义了一次。把实际存储的值解码一遍,对照原文,就能定位多出来的那一层。
- 让中文通过纯 ASCII
旧接口、邮件网关或单字节编码的下游只认 ASCII。这时勾选非 ASCII 编码,把中文与 Emoji 转成数字实体,数据原样通过,另一端解码即可无损还原。
使用技巧
- 拿不准就用默认的基本五字符模式,输出最短且足以安全嵌入节点与属性。
- 解码只进行一次:&lt; 会还原成 < 而不会继续解码,正文中的普通 & 不受影响。
- 无法识别的命名实体会原样保留,整页粘贴源码也不会被误改。
注意事项
- 属性值里的引号别省略
把文本写进 HTML 属性时不转义引号,属性值会被提前截断,后半截变成标签的一部分,页面结构随之错乱。基本五字符模式已覆盖两种引号。
- 实体名区分大小写
Á 与 á 是两个不同字符,大小写混写会得到错误字形。从网页复制的片段若显示成原文,先逐个核对实体名的拼写与大小写。
- 数字实体结尾要有分号
数字实体漏掉结尾分号时,部分浏览器容错解析,另一部分原样输出。这样同一页面在不同环境下展示就不一致,生成后检查结尾字符再发布。