• 用******户 使用了工具 Base64编解码
  • 开******发 使用了工具 MD5加密
  • 工******程 使用了工具 时间戳转换
  • 程******序 使用了工具 JSON格式化
  • 设******计 使用了工具 图片压缩
  • 产******品 使用了工具 URL编解码
  • 测******试 使用了工具 正则表达式
  • 运******维 使用了工具 密码生成器

在线UTF-8编码/解码工具

编码加密
在线UTF-8编码/解码工具,支持百分号编码、Hex转义、Unicode转义、字节序列等多种格式,支持批量处理,实时编码解码文本,快速获取标准化UTF-8转义编码
UTF-8编码UTF-8解码百分号编码Unicode转义Hex转义字节序列URL编码
UTF-8编码/解码
操作:
格式:
百分号编码
百分号编码URL编码格式,每个UTF-8字节用%XX表示,ASCII可打印字符保持不变URL参数传递、HTTP请求、网页编码
输入文本
编码结果
使用说明

工具介绍

UTF-8是一种针对Unicode的可变长度字符编码,由Ken Thompson和Rob Pike设计,现已成为互联网上最常用的字符编码标准。本工具支持在线UTF-8编码和解码,提供百分号编码(%XX)、Hex转义(\xXX)、Unicode转义(\uXXXX)、字节序列(0xXX)、十进制字节五种输出格式,支持批量逐行处理,实时显示字符数和字节数。所有操作均在浏览器本地完成,不上传服务器,安全可靠。

五种编码格式详解

百分号编码
URL编码格式,每个字节用%XX表示
你好 → %E4%BD%A0%E5%A5%BD
Hex转义
C风格\xXX转义格式
你好 → \xE4\xBD\xA0\xE5\xA5\xBD
Unicode转义
\uXXXX格式,按Unicode码点
你好 → \u4f60\u597d
字节序列(0x)
0xXX格式,空格分隔
你好 → 0xE4 0xBD 0xA0 0xE5 0xA5 0xBD
十进制字节
十进制格式,逗号分隔
你好 → 228,189,160,229,165,189

编码示例对照

原文百分号编码Hex转义Unicode转义
你好%E4%BD%A0%E5%A5%BD\xE4\xBD\xA0\xE5\xA5\xBD\u4f60\u597d
世界%E4%B8%96%E7%95%8C\xE4\xB8\x96\xE7\x95\x8C\u4e16\u754c
HelloHello\x48\x65\x6C\x6C\x6F\u0048\u0065\u006c\u006c\u006f
123123\x31\x32\x33\u0031\u0032\u0033
🎉%F0%9F%8E%89\xF0\x9F\x8E\x89\ud83c\udf89

UTF-8编码原理

ASCII字符 (0-127) 使用1个字节,最高位为0,如A(65)的二进制为01000001,UTF-8编码与ASCII完全兼容。
拉丁字母等 (128-2047) 使用2个字节,格式:110xxxxx 10xxxxxx,如é的码点U+00E9编码为0xC3 0xA9。
中文等 (2048-65535) 使用3个字节,格式:1110xxxx 10xxxxxx 10xxxxxx,如「中」的码点U+4E2D编码为0xE4 0xB8 0xAD。
emoji等 (65536+) 使用4个字节,格式:11110xxx 10xxxxxx 10xxxxxx 10xxxxxx,如🎉的码点U+1F389编码为0xF0 0x9F 0x8E 0x89。

使用步骤

选择操作
选择「编码」或「解码」操作
选择格式
选择需要的编码格式(百分号、Hex、Unicode等)
开启批量(可选)
如需逐行处理,勾选「批量模式」
输入并执行
在左侧输入内容,点击「UTF-8编码/解码」按钮

使用技巧

常见问题

Q1: UTF-8和Unicode有什么区别?

Unicode是一个字符集标准,为世界上几乎所有字符分配了唯一的数字编号(码点),如「中」的码点是U+4E2D。UTF-8是Unicode的一种编码实现方式,将码点转换为字节序列。除了UTF-8,还有UTF-16、UTF-32等编码方式。简单说,Unicode是「字符对应数字」的映射表,UTF-8是「数字对应字节」的编码方案。

Q2: 为什么中文用百分号编码会变成6个%XX?

因为在UTF-8编码中,一个中文字符占用3个字节。百分号编码(URL编码)是对UTF-8字节序列进行编码,每个字节用一个%XX表示。所以一个中文字符「你」会被编码为3个百分号序列:%E4%BD%A0。同理,emoji表情通常占用4个字节,会编码为4个%XX序列。

Q3: Unicode转义和百分号编码有什么区别?

Unicode转义(\uXXXX)是按字符的Unicode码点编码,每个字符用一个或两个\uXXXX表示,与实际存储的字节无关。百分号编码(%XX)是按UTF-8编码后的字节序列编码,每个字节用一个%XX表示。例如「你」的Unicode转义是\u4f60(6字符),百分号编码是%E4%BD%A0(9字符)。Unicode转义常用于源码开发,百分号编码用于URL。

Q4: emoji表情为什么用Unicode转义会有两个\uXXXX?

因为emoji表情的码点超过了16位(U+1F389等),超出了单个\uXXXX的表示范围(\uXXXX只能表示0-65535)。UTF-16使用代理对(Surrogate Pair)来表示这些字符:将码点拆分为高位代理(0xD800-0xDBFF)和低位代理(0xDC00-0xDFFF)两部分。例如🎉的码点U+1F389会被表示为\u d83c\udf89两个转义序列。

Q5: 批量模式有什么用?

批量模式会对输入内容的每一行进行独立编解码。这对于需要处理多个字符串的场景非常有用,例如:批量编码URL参数列表、解码多行日志中的编码内容、处理CSV文件中的编码字段等。开启批量模式后,每行会独立处理,错误只影响对应行,不会中断整个处理过程。

Q6: 我的数据会被上传吗?

不会。本UTF-8编解码工具所有计算全程在浏览器本地独立完成,使用浏览器内置的TextEncoder和TextDecoder API,无需联网操作,全程不产生网络传输。原始文本和编码结果都不会发送、记录或缓存到任何服务器,关闭页面后所有数据即刻清空。

应用场景

应用场景说明
URL参数编码对URL中的中文、特殊字符进行百分号编码
源码开发在代码中使用\uXXXX或\xXX转义特殊字符
协议开发查看和分析网络协议中的UTF-8字节序列
数据分析解码日志、数据库中的编码内容
国际化处理多语言文本的编码转换
爬虫开发处理网页中的编码内容
教学演示学习理解UTF-8编码原理
文件处理处理不同编码格式的文件内容