UTF-8相关函数:各语言常用函数一览

46 0

UTF-8 是 Unicode 最常用的存储编码,用 1–4 个字节表示一个字符:ASCII 字符 1 字节,拉丁字母扩展 2 字节,常用汉字 3 字节,emoji 等 4 字节。下面重点说明各语言常用函数一览。

UTF-8相关函数

Python:

"中".encode("utf-8")              # b'\xe4\xb8\xad'
b"\xe4\xb8\xad".decode("utf-8")   # '中'
len("123问".encode("utf-8"))      # 6
open("a.txt", encoding="utf-8")

JavaScript:

new TextEncoder().encode("中");        // Uint8Array [228, 184, 173]
new TextDecoder("utf-8").decode(bytes);
// Node.js
Buffer.byteLength("123问", "utf8");    // 6

Java:

byte[] b = "中".getBytes(StandardCharsets.UTF_8);   // [-28, -72, -83]
String s = new String(b, StandardCharsets.UTF_8);

示例

输入:<b>粗体</b>

编码结果:3C 62 3E E7 B2 97 E4 BD 93 3C 2F 62 3E

说明:按 UTF-8 共 13 字节。

命令行示例

# 查看文件编码
file -i notes.txt
# GBK 转 UTF-8
iconv -f GBK -t UTF-8 in.txt > out.txt
# 查看字节
echo -n "中" | xxd     # e4b8 ad

Go 示例

下面是 Go 中处理UTF-8的常用写法:

s := "123问"
len(s)                     // 6,Go 字符串就是 UTF-8 字节
utf8.RuneCountInString(s)  // 4
utf8.ValidString(s)        // true

运行前确认输入的字符集(推荐 UTF-8),结果可以用本站工具交叉核对。

本站的字符编码检测工具可以直接处理,计算在浏览器本地完成,适合快速核对结果。

常见问题

【UTF-8 能表示所有汉字吗?】能,包括所有 CJK 扩展区汉字。

【一个汉字在 UTF-8 中占几个字节?】常用汉字 3 个字节;扩展 B 区及以后的生僻字 4 个字节。

【UTF-8 和 utf8mb4 有什么区别?】utf8mb4 是 MySQL 中真正完整的 UTF-8;MySQL 的 utf8 最多 3 字节,不能存 emoji。

文中示例可以在本站对应工具中验证;处理密码、证件号等敏感数据时,请注意保护隐私。

署名:123问编辑部 · 最近修订:2026-11-11 · 已按编辑与审核说明检查;内容仅供参考,不构成医疗、法律或投资建议。发现错误可查看纠错方式。

标签: 文本处理

抱歉,评论功能暂时关闭!