1. 问题描述–(linux下经常遇到的编码问题)
师兄在 windows
下写的一段程序(C/C++
编写), 传给我在 Linux
下面运行, 编译和运行的时候输出的时候中文乱码了
2. 原因解析
如果你需要在 Linux
中操作 windows
下的文件, 那么你可能会经常遇到文件编码转换的问题.
Windows` 中默认的文件格式是 `cp936`(通常被视为等同 `GBK`), 而 `Linux` 一般都是 `UTF-8
3. 背景知识(什么是编码?)
关于编码的定义,我们可以查看
还可以参考:http://www.cnblogs.com/cocowool/archive/2009/04/25/1443529.html
4 linux下查看编码的方法
-
方法一:file filename
file cp936.c1
-
方法二:在Vim中可以直接查看文件编码
:set fileencoding1
即可显示文件编码格式
如果你只是想查看其它编码格式的文件或者想解决用Vim查看文件乱码的问题,那么你可以在
~/.vimrc 文件中添加以下内容:
set encoding=utf-8 fileencodings=ucs-bom,utf-8,cp93612
这样,就可以让vim自动识别文件编码(可以自动识别UTF-8或者GBK编码的文件),其实就是依照 fileencodings提供的编码列表尝试,如果没有找到合适的编码,就用latin-1(ASCII)编码打开。
以上就是
为各位朋友分享的 相关内容。想要了解更多Linux相关知识记得关注公众号“良许Linux”,或扫描下方二维码进行关注,更多 等着你!