如何解决Android客户端工程编码转换问题

    一、场景描述:

    有一个Android工程或一个Java工程,工程的编码为GBK。此工程中的部分文件编码是GBK,另外部分文件的编码是UTF-8,现在要求将工程的编码设置为UTF-8,工程内所有文件统一为UTF-8编码,并且不产生乱码问题。

    二、可选方案:

    1.网上任意找一个所谓的转换工具。

    利:简单;快速;

    弊:不可控(二次危害);稳定性无法保证;无法保证所有文件全部转换成功;无法保证不产生乱码问题;

    2.手工处理。

    利:简单;有保证;

    弊:成本高;周期长;研究成果无法重复利用;

    3.利用网上已有Java小程序,修改之后使用。

    利:研究成果可重复利用,可批量处理;有较高保证(这个保证以优良的Java小程序为前提);

    弊:研究较复杂;小程序需要反复调试和测试,研究完成之后,还需要独立的将此小程序保存;仅研究者自己熟悉,不便于他人熟悉和学习;

    4.利用Linux下的Shell命令。

    利:批量处理;成熟稳定;速度也有保证;简单(几条命令的事);

    弊:不易上手;一般人不知道这些命令;无法轻松的让这些串连起来成一个脚本,为自己所用(哈哈,我就是这样);不跨平台;

    5.利用VIM的批处理命令。

    利:非常简单;成熟稳定;结果有保证;批量处理;灵活;

    弊:难以想到他的相关命令;难以将他的相关命令运用自如;

    三、方案选择:

    选择方案5:利用VIM的批处理命令

    选择理由:

    1.找到了他的相关命令

    2.简单

    3.稳定

    4.灵活

    5.跨平台

    6.软件轻松可得

    7.批量

    8.本人之前就对VIM比较熟悉

    9.args命令之前就使用过

    四、具体流程:

    1.下载一个最新版的VIM编辑器,并安装

    2.找到你JAVA工程的资源目录

    3.在资源目录的根目录创建一个“test.txt”文本文件(Linux下,无需这一步)

    4.使用VIM打开此文本文件

    5.在进入VIM的命令模式(默认,刚打开便进入的命令模式。如果你不小心进行了编辑模式,可以使用Esc键返回命令模式。<其实能进入VIM编辑模式的人,必然知道如何退出编辑模式>)

    6.输入args命令。比如,你需要处理当前目录,以及当前目录的所有子目录下的所有java文件,你可以输入   :args **/*.java

,那txt文件呢?当然是 :args **/*.txt了。依此类推。多种类型或文件可以使用空格分隔。

    7.输入argdo命令。比如,你需要将使用args命令打开的所有文件的编码设置为UTF-8,你可以输入  :argdo set fenc=utf-8 | update,或输入  :argdo set fileencoding=utf-8 | update ,那需要变为gbk呢?你可以输入 :argdo set fenc=cp936  | update ,同样,其它编码都可以设置。

    8.最后wq退出。

转载于:https://my.oschina.net/ybf326/blog/378225

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值