ISO 8859(GBK) 编码文件转码到UTF | 您所在的位置:网站首页 › iso-8859-1和utf16 › ISO 8859(GBK) 编码文件转码到UTF |
问题产生: 现需要把一个在windows的Myeclipse下开发的小程序,转到Linux系统下去安装运行,结果程序中的.java文件中的中文到Linux下vim显示全是乱码。 现做以下分析:其主要原因是windows中Myeclipse中默认的文件编码格式为GBK或GB2312格式,而Linux系统默认的文件格式是UTF-8, 这样在windows下GBK格式的中文,到Linux下vim查看中文全部显示乱码,英文正常。
解决办法: 1. 修改vim配置文件,使得用vim可以正常查看文件中的中文字符,但是此法并没有改变源文件的编码格式 具体方法:找到linux系统下的vimrc文件(目录/usr/share/vim/vimrc)用root权限打开并在文件末尾添加下面四行代码: set fileencodings=utf-8,gb2312,gbk,gb18030
set termencoding=utf-8
set fileformats=unix
set encoding=prc 再用vim打开,就可以正常显示乱码的文件了。(记住但并未改变源文件的编码格式,只是vim读文件时自己完成了转码)2. 改变windows下的源码文件的编码格式为Linux下编码格式 先说下查看文件编码格式的命令: (1)用vim打开文件的话可以输入 :set fileencoding 回车查看 (2)用命令 file 文件名 例如 file a.txt 查看a.txt 的文件编码格式 然后就是具体的转码操作: Linux可以用iconv命令进行文档的转码操作,具体命令格式: iconv -f GBK -t UTF-8 待转码文件名 -o 输出文件名 解释下此命令,其中 -f 接的是代转文件编码格式(即被转码格式) -t 接的是目标文件编码格式(即目标编码格式) -o 表示输出。上面完成了 将待转码文件(GBK编码格式) 转换成 输出文件(UTF-8编码格式) ,也就是完成了从GBK到UTF-8的转换。(提示:要想转码后不产生新文件,把代转文件名和输出文件名写成同一个就行了) 举例:iconv -f ISO-8859 -t UTF-8 zhuan.java -o zhuan.java
|
CopyRight 2018-2019 实验室设备网 版权所有 |