当C++的.cpp文件是GBK编码时,写文件时无法指定编码格式,那写的文件内容默认也是GBK编码。在windows打开没问题,但在fedora打开就出现乱码,且程序在fedora生成的结果文件打开也时乱码,因为gedit默认不能选择编码格式打开。这种情况可以这样处理:
终端输入命令:
$ gsettings set org.gnome.gedit.preferences.encodings auto-detected "['UTF-8', 'GB18030', 'GB2312', 'GBK', 'BIG5', 'CURRENT', 'UTF-16']"
$ gsettings set org.gnome.gedit.preferences.encodings shown-in-menu "['UTF-8', 'GB18030', 'GB2312', 'GBK', 'BIG5', 'CURRENT', 'UTF-16']"
执行后,打开文件时可探测编码方式,依次按'UTF-8', 'GB18030', 'GB2312', 'GBK', 'BIG5', 'CURRENT', 'UTF-16'找到探测到的编码方式打开文件就正常了。