前言
在实际的开发中,当我们完成了一个apk,一般都是英语和中文简体这两种语语言,如果发布了,则需要把字符转换给翻译公司,让他们帮忙翻译,一般提供一个 Excel 表格,如下:
当翻译完成之后,我们希望能把它快速转换成 value-xx 文件下对应的 string 或者 arrays ,如:
我只要复制粘贴即可。当然网上也有很多大神用 Python 或者其他语言写了,但是我们用 Android 的,所以肯定用 Java 了。于是我写了个 EasyTransLib 用来方便翻译。因为 studio 对 pc 端的支持并友好,所以这个工程是用 eclipse 开发。
工程如下:https://github.com/LillteZheng/EasyTranalte
String 转换成 Excel
首先,在工程的根目录,写一个文件夹,比如 Test:
values 比较简单,就一个 string 和 arrays ,目前也就支持这两个。
其中 strings 如下:
<?xml version="1.0" encoding="utf-8"?> <resources> <string name="app_name">OtaService</string> <string name="anim_time">200</string> <string name="system_update">System upgrade</string> <string name="check_new_version">Find a new version. Download it?</string> </resources>
arrays 如下:
<?xml version="1.0" encoding="utf-8"?> <resources> <string-array name="test_array"> <item>one</item> <item>two</item> <item>three</item> </string-array> <string-array name="test2_array"> <item>hour</item> <item>min</item> <item>second</item> </string-array> </resources>
开始转换
找到工程下的 WriteXmlToXls
需要添加 文件夹的名字:
效果如下 gif 图:
刷新一下,就会看到生成 string 和 arrays strings
arrays
arrays 的样式丑了点,但这都是为了接下来住转换 strings 准备的。
Excel 转 strings.xml 和 arrays
上面,我们已经把 strings 和 arrays 转换成 Excel 了,那么接下来就是对 Excel 传承我们最喜欢 的string 和 arrays 了。
把 test.xlsx 的 strings 添加多几个字符,和新增一个中文繁体的
其中首行的 国家名称必须写,否则无法识别成对应的文件夹的名称
arrays 也加一个:
然后把 test.xlsl 放在根目录下,并找到 ReadXlsToXml 这个类
ReadXlsToXml 可以配置一些信息:
看下面的 动图:
按 F5 刷新一下,就可以看到 也生成了 value-zh-rTW 的繁体字符了。
总结
以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,如果有疑问大家可以留言交流,谢谢大家对自由互联的支持。