Android 多國語言轉換 Excel 和 Excel 轉換為 string

夏至的稻穗發表於2019-03-02

在實際的開發中,當我們完成了一個apk,一般都是英語和中文簡體這兩種語語言,如果釋出了,則需要把字元轉換給翻譯公司,讓他們幫忙翻譯,一般提供一個 Excel 表格,如下:

在這裡插入圖片描述

當翻譯完成之後,我們希望能把它快速轉換成 value-xx 檔案下對應的 string 或者 arrays ,如:

在這裡插入圖片描述

我只要複製貼上即可。當然網上也有很多大神用 Python 或者其他語言寫了,但是我們用 Android 的,所以肯定用 Java 了。於是我寫了個 EasyTransLib 用來方便翻譯。因為 studio 對 pc 端的支援並友好,所以這個工程是用 eclipse 開發。

工程如下:github.com/LillteZheng…

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 的繁體字元了。

相關文章