解决“invalid UTF-8 encoding”

有如下一个程序

package main

import"fmt"

func main(){
        fmt.Println("hello,2024年")
}

go run xxx.go出现以下的问题

在这里插入图片描述
问题“invalid UTF-8 encoding”,无效的utf8编码。有可能是文件的编码不是“utf8”
为了验证猜想,看一下“xxx.go”文件的编码方式。

  • 以“记事本”的方式打开该文件,在右下角即可看到文件的编码方式
    解决“invalid UTF-8 encoding”_第1张图片
    可以看到该文件的编码方式为"ANSI",接下来我们想办法把该文件的编码方式变为"UTF-8"
  • 点击"文件---->另存为",“保存文件类型”选择为"所有文件(.)“,编码方式选择"UTF-8”

解决“invalid UTF-8 encoding”_第2张图片
选择"是(Y)"
解决“invalid UTF-8 encoding”_第3张图片

之后可以看到文件的编码方式为"UTF-8"
解决“invalid UTF-8 encoding”_第4张图片

再次运行该文件,运行成功

go run xxx.go

在这里插入图片描述
出现上述问题的原因在于"记事本的默认编码是ANSI,而go的默尔编码是UTF-8",所以将其改变为"UTF-8"编码即可。

你可能感兴趣的:(Go,编码,记事本,go,vim,encoding)