我写了个读文件的程序
只是读一个简单的txt文件,但里面含有中文
package main
import (
"fmt"
file "io/ioutil"
// utf "unicode/utf8"
)
func main() {
readbuf, _ := file.ReadFile("test.txt")
str := string(readbuf)
buf := []rune(str)
//buf, l := utf.DecodeRune(readbuf)
l := len(buf)
for i := 0; i < l; i++ {
fmt.Printf("%c", buf[i])
}
}
我想问下unicode/utf包中有下面两个函数,是不是将从文件中读出的[]byte类型转换成[]rune类型啊?感觉不像,那要怎么转换才可以呢,我用上面的代码倒是实现了,但感觉应该不是这样的,而且我还把test.txt转换成utf8编码才可以。求大神讲解下!
func DecodeRune(p []byte) (r rune, size int)
func EncodeRune(p []byte, r rune) int
有疑问加站长微信联系(非本文作者)