Chinaunix首页 | 论坛 | 博客
  • 博客访问: 112777
  • 博文数量: 11
  • 博客积分: 282
  • 博客等级: 二等列兵
  • 技术积分: 263
  • 用 户 组: 普通用户
  • 注册时间: 2012-04-09 20:34
文章分类

全部博文(11)

文章存档

2012年(11)

分类: LINUX

2012-04-09 21:36:07

最近从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编码格式     

                    
  
阅读(4147) | 评论(1) | 转发(1) |
0

上一篇:没有了

下一篇:java 小程序 计算器

给主人留下些什么吧!~~

KakitChen2012-04-14 21:30:28

好帖~