通过Ant批量转换文件的字符集编码

来源:百度文库 编辑:神马文学网 时间:2024/03/29 19:00:10
破门:看了下自己的这个技术blog,最近的一份帖子竟然是3月份的了。不由感慨,原来自己已经这么久没有涉及技术方面的工作内容了。
今天刚好安装 vTigerCRM 试用,从网上下载了5.0 b一个中文资源包,需要将资源包转换为UTF-8的编码。折腾一番后,发现利用Ant 1.6版本的Copy task 新增的一个特性可以轻松搞定批量的文件字符集编码转换,贴出来给大家共享。:)
build.xml 的详细内容
 
build.xml
< project  name ="vtigercrm language pack"  default ="encoding" >
     < property  name ="target.dir"  value ="${basedir}/target"   />
     < property  name ="output.encoding"  value ="UTF-8"   />

     < target  name ="init" >
         < mkdir  dir ="${target.dir}" />
    

     < target  name ="clean" >
         < delete  dir ="${target.dir}"   />
    

     < target  name ="encoding"  depends ="init" >
         < copy  todir ="${target.dir}"     outputencoding ="${output.encoding}"   >
             < fileset  dir ="${basedir}" >
                   < include  name ="**/*.php" />
            
             < filterset >
                 < filter  token ="ENCODING"  value ="${output.encoding}" />
            
        
    

稍微解释一下:
1、安装好ant环境。好像是废话,:)
2、按照你的资源文件命名修改 fileset, 比如改成 “**/*.properites”等等;
2、将修改后这个 build.xml 复制到你要进行批量文件编码转换的最上层目录;
3、在命令行进入上面的目录,敲入 ant  回车;
4、target 目录就是你所需要的东东了。
原理:
通过将当前文件复制到目标输出目录的copy 任务,设置 outputencoding 属性,可以轻松获得编码后的资源文件,:)
当然,你还可以设定ant 的filter token, 比如“@ENCODING@”,来按照需要修改文件的内容。