软件应该只在内部使用Unicode字符串,在输出时转换为特定的编码。
以上引用来自Python文档。 Python有一个unicode字符串类型,所以这是有道理的。 Go没有unicode字符串。因为字符串只是一个不可变的字节切片。 Go的等价报价是什么?
在进入程序时将文本转换为utf-8并在内部存储为utf-8,然后输出utf-8?
答案 0 :(得分:6)
一般来说,在Go中,您将使用[]byte
包的ioutil
方法编写WriteFile
之类的内容。 https://golang.org/pkg/io/ioutil/#WriteFile
是的,答案是您明确声明了编码。由于字符串只是一个字节切片,因此没有固有的编码,但Go源中的字符串文字将是UTF-8。如果你还没有读过Robert Pike关于字符串,字节和符文的Go博客文章,那值得花时间; https://blog.golang.org/strings