Unicode 编码 / 解码

在线 Unicode 与中文互转工具,支持 \u、%u、&#x; 三种前缀与十六进制大小写,正确处理 emoji 代理对,纯浏览器本地计算。

本地计算 · 数据不上传
广告

工具说明

工具说明

Unicode 转义把每个字符表示为它的码点(code point)。本工具支持三种常见前缀:

  • \u:标准 JavaScript / Java 风格,如 \u4f60\u597d。
  • %u:非标准的 %uXXXX 风格(部分旧系统使用)。
  • &#x;:HTML 十六进制实体,如 你。

勾选「大写十六进制」后输出 \u4F60 形式。编码时正确处理 emoji 等超出基本多文种平面(BMP)的字符:一个 emoji 会被拆成一对代理(surrogate)转义。例如 😊 编码为 \uD83D\uDE0A,解码时也会自动合并回原字符。

使用示例

编码「你好」:

\u4f60\u597d

编码带 emoji 的文本「Hi😊」得到:

Hi\uD83D\uDE0A

常见用途

  • 在源码里用纯 ASCII 表示非英文字符串
  • 排查乱码时查看字符的真实码点
  • 把带有特殊符号的配置转成可移植的转义形式

常见问题

Q1.为什么 emoji 会变成两个 \u?
emoji 的码点超过 0xFFFF,不能用单个 \uXXXX 表示(它只有 4 位十六进制,最大 65535)。UTF-16 用一对代理码元(高位 �–� 与低位 �–�)来表示,所以你会看到两个 \u。本工具编解码都会自动处理这种代理对。
Q2.\u、%u、&#x; 有什么区别?
它们只是不同的前缀写法,表示的码点相同。\u 是 JS/Java 标准;%u 是某些旧浏览器的遗留风格;&#x; 是 HTML 实体。解码时请选择与你数据一致的前缀。
Q3.解码后中文变成了乱码或问号?
通常是码点本身写错了,或者用了错误的前缀。请确认转义串完整、十六进制合法,并匹配原始编码时使用的前缀。本工具不会修改无法识别的普通文本。
Q4.为什么需要这项工具,直接用 UTF-8 不行吗?
绝大多数场景用 UTF-8 即可。但在某些只能传输 ASCII 的配置文件、日志或旧系统中,Unicode 转义能保证字符不丢失,便于调试与移植。
广告

相关工具