编码格式的转换

4184阅读 1评论2012-04-09 bse_han
分类:LINUX

最近从windows往linux拷贝东西  发现乱码  并且小小的研究了下.....

1.文本转换工具  iconv

     iconv------用于把给定文件从一种编码格式转化为另一种编码格式
    如果转换一个文件的编码,则建议用iconv  简单,方便
    iconv格式
            iconv -f encoding1 -t encoding2 -o outputfile inputfile
     解释: 把给定文件inputfile从ecoding1编码格式转化为ecoding2编码格式              并且存入到outputfile文件当中.

2.批量转换文本

   比如你想转化一个文件夹下的所有.c文件,一个一个转化就太慢了.
   
   对于这种情况 shell脚本编程是好的选择,它其实也是调用iconv,只是把它放在循环中,这样就可以进行批处理,很方便.当然你也可以自己写一个程序也可以实现,那样相对麻烦些.

   底下为该脚本名为test.sh

   #!/bin/sh
   for a in $*   //  此处用到了循环  遍历通配符*中的所有对象   (因为你要                      进行批处理,肯定要用到通配符*) 
   do  
   if [-f $a]      //判断这个文件是否存在   
   then
   iconv -f GBK -t UTF8 -o tmp.x $a       //转码后的文件放入 tmp.x文件中
   mv tmp.x $a               //然后再把tmp.x文件中的内容移动到源文件中       fi 
   done  
    
  然后退出保存
  修改test.sh为可执行程序    chmod x test.sh
         例如运行            ./test.sh *.c   
   就可以实现你当前目录所有.c文件的转码了.

3.vim配置文件的修改

  修改vim的配置文件就能实现用vim打开不回出现乱码.
   按照如下方式执行
   
   sudo su           //进入到root用户下
   cd /etc/vim
   vim vimrc

   在末尾加上如下语句
   set fencs=ucs-bom,utf-8,gb18030,gbk,gb2312,big5,euc-jp,euc-kr,latin1,cp936set  encoding=utf-8
    set termencoding=utf-8

   这样就实现了大多数编码格式的转换,转换成utf-8编码格式     

                    
  
上一篇:没有了
下一篇:java 小程序 计算器

文章评论