代码、数据与二维码工具

HTML 实体编码与解码

选择基本编码、非 ASCII 编码或解码。Unicode 按码点在浏览器本地处理,结果仅按文本显示。

优先本地处理无需注册隐私说明 ↗

实体文本转换不是 XSS 净化器。结果为纯文本,不执行 HTML 或 JavaScript。

输入留在此浏览器中,不发送。

使用步骤

如何使用

  1. 输入最多 100,000 个 UTF-16 码元的文本或实体。
  2. 选择解码、基本编码或基本及非 ASCII 编码。
  3. 转换并检查纯文本结果,选中后复制。

两种编码模式

基本模式将 &、<、>、双引号和单引号替换为 &amp;、&lt;、&gt;、&quot;、&#39;。非 ASCII 模式另将所有大于 U+007F 的码点转为十进制数字实体。Emoji 按一个码点编码,而非两个代理码元。已有实体中的 & 也会再次编码。

浏览器 HTML 解码

在脱离文档的 textarea 中单次应用浏览器 HTML 字符引用规则,支持命名、十进制和十六进制引用。未知名称保留为文本;缺少分号时沿用 HTML 规则。零、代理码点及越界数字转为 U+FFFD,部分控制引用按 HTML 规则重映射。换行及无效输入规范化可能无法精确往返。这不是 JavaScript 转义解析器。

纯文本边界

只有脱离文档的 textarea 解析实体内容;可见结果写入 textarea.value,不作为 HTML 渲染。编码依赖上下文,不能净化 HTML,也不保证任意内容可安全放入脚本、URL 或属性。输出限 1,000,000 个 UTF-16 码元。

常见问题

你可能还想知道

两种编码模式有何不同?

基本模式编码五种 HTML 敏感字符;非 ASCII 模式还把全部非 ASCII 码点(包括 Emoji)编码为十进制引用。

无效数字引用如何处理?

浏览器 HTML 解码将零、代理码点及超出 U+10FFFF 的值转为 U+FFFD,并重映射部分控制值。不采用 JavaScript Unicode 规则,也不保证无损解码。

会净化 HTML 或上传输入吗?

不会。仅在本地转换实体文本并显示纯文本,不提供 XSS 净化。