如何在Go程序内部存储文本?

时间:2016-01-06 17:53:44

标签: unicode go utf-8

  

软件应该只在内部使用Unicode字符串,在输出时转换为特定的编码。

- Python Docs

以上引用来自Python文档。 Python有一个unicode字符串类型,所以这是有道理的。 Go没有unicode字符串。因为字符串只是一个不可变的字节切片。 Go的等价报价是什么?

在进入程序时将文本转换为utf-8并在内部存储为utf-8,然后输出utf-8?

1 个答案:

答案 0 :(得分:6)

一般来说,在Go中,您将使用[]byte包的ioutil方法编写WriteFile之类的内容。 https://golang.org/pkg/io/ioutil/#WriteFile

是的,答案是您明确声明了编码。由于字符串只是一个字节切片,因此没有固有的编码,但Go源中的字符串文字将是UTF-8。如果你还没有读过Robert Pike关于字符串,字节和符文的Go博客文章,那值得花时间; https://blog.golang.org/strings