Go Wiki:GoStrings
不要求字符串为 UTF-8。要求 Go 源代码为 UTF-8。两者之间存在复杂路径。
简而言之,有三种字符串。它们是
- 分析为字符串文字的源代码子字符串。
- 字符串文字。
- 类型为 string 的值。
仅要求第一个为 UTF-8。要求第二个以 UTF-8 编写,但其内容以各种方式解释,并且可能对任意字节进行编码。第三个可以包含任何字节。
对此进行尝试
var s string = "\xFF語"
源代码子字符串:"\xFF語"
,UTF-8 编码。数据
22
5c
78
46
46
e8
aa
9e
22
字符串文字:\xFF語
(引号之间)。数据
5c
78
46
46
e8
aa
9e
字符串值(不可打印;这是 UTF-8 流)。数据
ff
e8
aa
9e
并且记录在案,字符(代码点)
<erroneous byte FF, will appear as U+FFFD if you range over the string value>
語 U+8a9e
此内容是 Go Wiki 的一部分。