Windows控制台上的UTF-8支持
来源:互联网 发布:数据科学学报 编辑:程序博客网 时间:2024/04/25 12:34
最近在学习Go语言,发现调用一些库函数失败后的返回字符串,都是一些乱码,觉得奇怪。所以写了一个最简单的程序来复现这个问题:
func main(){
_, err := os.Open("none-exist-file")
if err != nil{
fmt.Println(err)
}
}
编译运行一切都正常,但是输出是乱码:
open none-exist-file: 绯荤粺鎵句笉鍒版寚瀹氱殑鏂囦欢銆?
原因就是Go语言以UTF-8编码进行输出,而Windows控制台默认不支持UTF-8。解决方法就是更改code page,
使用命令 chcp,不加任何参数便显示当前的code page。把code page改为65001即可。另外还要把字体改为
Lucia Console。
这样的更改会导致其它一些不使用utf-8编码的程序出现乱码。
一些相关的link:
https://groups.google.com/forum/#!topic/golang-nuts/WhpWNhBRMFM/discussion
https://groups.google.com/group/golang-nuts/browse_thread/thread/cf9727737e5b4a00/d0e9d4dc975e875b?lnk=gst&q=messy+code#d0e9d4dc975e875b
http://hi.baidu.com/edeed/blog/item/2e99a14440bd8884b2b7dcb1.html
http://blog.codingnow.com/2008/12/utf-8_replacement.html
- Windows控制台上的UTF-8支持
- 实现控制台上的进度条
- 控制台上的黑白棋
- 在Windows控制台上显示中文
- 如何在Windows控制台上显示中文
- 控制台上ctrl+z引起的疑惑
- windows vim gvim utf-8 (支持utf-8格式)
- 如何在Windows控制台上利用Perl处理UTF8
- ffmpeg控制台上不能输出信息的解决办法
- 设置eclipse控制台上的信息输入到某个文件
- 控制台上的内容不输入到nohup.out
- 一个控制台上永远都是你赢的五子棋游戏,囧
- 在控制台上输入菱形的边长,打印出菱形
- 在Windows的CMD中如何设置支持UTF-8编码
- C#控制台基础 按下任意键,显示在控制台上或者不显示在控制台上的console.readkey()
- Windows下Git支持UTF-8文件名问题
- MySql支持utf-8编码的问题
- Jocky对utf-8的支持
- 悉数微软Windows帝国幕后10大关键人物(图)
- 内核中的Makefile与Kconfig(1)
- 每个程序员都应该阅读的书籍
- 【Cortex-M0】19.4功耗控制
- 【Cortex-M0】19.5系统复位
- Windows控制台上的UTF-8支持
- C++ Primer 第10章 习题10.23
- make xconfig错误:Unable to find the QT3 installation
- 有影响的10位计算机人物
- dos下网络命令
- 【Cortex-M0】19.6 scatter文件
- 【Cortex-M0】19.7 USER配置
- passthru安装
- 【Cortex-M0】19.8欠压电压值设定(BOD)