日期:2014-05-16  浏览次数:20579 次

请教,我将windows下的带有中文解释的代码在linux打开,全是乱码
1.出现这个情况的原因是什么,能否详细说说呢
2.怎么解决

谢谢各位朋友了

------解决方案--------------------
中文注释乱码?
编码的问题
你在WINDOWS下不是保存为gb2312的
而在linux的编辑器以utf8编码打开的?
指定一下用什么编码打开就行了
------解决方案--------------------
你编辑你的代码时全部保存为gbk2312格式,编译后的程序读gbk2312是能读出来的.如果
你保存为utf8格式,则程序读gbk2312字体就会成乱码.
我前一段时间就遇到过这个问题,在linux下读windows下传过来的文件,一开始遇到的情况和你的一样,后来把
所有的代码全部保存成gbk2312格式后就可以了.具体什么原因我也不大清楚,你可以试一下.
------解决方案--------------------
在~/.vimrc里面有三个设置跟编码有关
set encoding=utf-8 "这个用于显示给我们看的(我的经验是设为本地使用的语言编码(查看$LANG)),显示乱马应该跟这个有关,且该选项只有在~/.vimrc设置后才会使自定义的生效(设置后重新打开文件)
set fileencoding=utf-8 "保存文件时使用的编码
set fileencodings=utf-8, gb18030,cp936 "vim用这些逐个解码要打开的文件,并用能正确解码的编码设置为fileencoding的值

我这里打开windows文件时,用 "set fileencoding "查看编码为cp936(好像用的是gb2312),使用 "setlocal fileencoding=utf-8(或其他的编码) ",再保存,可以进行相应的编码转换

推荐学习vim_user_manual中关于编码以及~/.vimrc文件的使用。当初碰到这个问题,烦了很久。这些纯属个人经验,有什么问题在交流。