Android多國(guó)語言轉(zhuǎn)換Excel及Excel轉(zhuǎn)換為string詳解
前言
在實(shí)際的開發(fā)中,當(dāng)我們完成了一個(gè)apk,一般都是英語和中文簡(jiǎn)體這兩種語語言,如果發(fā)布了,則需要把字符轉(zhuǎn)換給翻譯公司,讓他們幫忙翻譯,一般提供一個(gè) Excel 表格,如下:
當(dāng)翻譯完成之后,我們希望能把它快速轉(zhuǎn)換成 value-xx 文件下對(duì)應(yīng)的 string 或者 arrays ,如:
我只要復(fù)制粘貼即可。當(dāng)然網(wǎng)上也有很多大神用 Python 或者其他語言寫了,但是我們用 Android 的,所以肯定用 Java 了。于是我寫了個(gè) EasyTransLib 用來方便翻譯。因?yàn)?studio 對(duì) pc 端的支持并友好,所以這個(gè)工程是用 eclipse 開發(fā)。
工程如下:https://github.com/LillteZheng/EasyTranalte
String 轉(zhuǎn)換成 Excel
首先,在工程的根目錄,寫一個(gè)文件夾,比如 Test:
values 比較簡(jiǎn)單,就一個(gè) string 和 arrays ,目前也就支持這兩個(gè)。
其中 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>
開始轉(zhuǎn)換
找到工程下的 WriteXmlToXls
需要添加 文件夾的名字:
效果如下 gif 圖:
刷新一下,就會(huì)看到生成 string 和 arrays strings
arrays
arrays 的樣式丑了點(diǎn),但這都是為了接下來住轉(zhuǎn)換 strings 準(zhǔn)備的。
Excel 轉(zhuǎn) strings.xml 和 arrays
上面,我們已經(jīng)把 strings 和 arrays 轉(zhuǎn)換成 Excel 了,那么接下來就是對(duì) Excel 傳承我們最喜歡 的string 和 arrays 了。
把 test.xlsx 的 strings 添加多幾個(gè)字符,和新增一個(gè)中文繁體的
其中首行的 國(guó)家名稱必須寫,否則無法識(shí)別成對(duì)應(yīng)的文件夾的名稱
arrays 也加一個(gè):
然后把 test.xlsl 放在根目錄下,并找到 ReadXlsToXml 這個(gè)類
ReadXlsToXml 可以配置一些信息:
看下面的 動(dòng)圖:
按 F5 刷新一下,就可以看到 也生成了 value-zh-rTW 的繁體字符了。
總結(jié)
以上就是這篇文章的全部?jī)?nèi)容了,希望本文的內(nèi)容對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,如果有疑問大家可以留言交流,謝謝大家對(duì)腳本之家的支持。
相關(guān)文章
Android實(shí)現(xiàn)文件上傳和下載倒計(jì)時(shí)功能的圓形進(jìn)度條
這篇文章主要介紹了Android實(shí)現(xiàn)文件上傳和下載倒計(jì)時(shí)功能的圓形進(jìn)度條,需要的朋友可以參考下2017-09-09Flutter進(jìn)階質(zhì)感設(shè)計(jì)之標(biāo)簽欄
這篇文章主要為大家詳細(xì)介紹了Flutter進(jìn)階質(zhì)感設(shè)計(jì)之標(biāo)簽欄,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2018-08-08Android studio實(shí)現(xiàn)簡(jiǎn)易的計(jì)算器功能
這篇文章主要為大家詳細(xì)介紹了Android studio實(shí)現(xiàn)簡(jiǎn)易的計(jì)算器功能,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2022-05-05Android Studio安裝配置方法圖文詳細(xì)教程
這篇文章主要為大家介紹了Android Studio下載和配置圖文詳細(xì)教程,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2018-07-07Android仿QQ個(gè)人標(biāo)簽添加與刪除功能
這篇文章主要為大家詳細(xì)介紹了Android仿QQ個(gè)人標(biāo)簽添加與刪除功能,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2018-12-12Android中自定義加載樣式圖片的具體實(shí)現(xiàn)
想實(shí)現(xiàn)下面這張圖中的自定義加載樣式,其實(shí)很簡(jiǎn)單,首先我們需要的布局組件有ProcessBar和TextView,下面是布局文件的代碼2014-04-04Android編程實(shí)現(xiàn)的自定義彈窗(PopupWindow)功能示例
這篇文章主要介紹了Android編程實(shí)現(xiàn)的自定義彈窗(PopupWindow)功能,結(jié)合簡(jiǎn)單實(shí)例形式分析了Android自定義彈窗實(shí)現(xiàn)方法與相關(guān)注意事項(xiàng),需要的朋友可以參考下2017-03-03Flutter應(yīng)用框架運(yùn)行微信小程序方法
這篇文章主要介紹了在Flutter?App內(nèi)運(yùn)行微信小程序的過程,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)吧2023-02-02