您好,登錄后才能下訂單哦!
這篇文章主要講解了“java開源好用的簡繁轉換類庫實例分析”,文中的講解內容簡單清晰,易于學習與理解,下面請大家跟著小編的思路慢慢深入,一起來研究和學習“java開源好用的簡繁轉換類庫實例分析”吧!
以maven做項目管理,可以直接從中央倉庫下載,再pom文件中添加以下依賴即可
<!-- https://mvnrepository.com/artifact/com.github.liuyueyi/quick-transfer-core --> <dependency> <groupId>com.github.liuyueyi</groupId> <artifactId>quick-transfer-core</artifactId> <version>0.2.6</version> </dependency>
說明:0.2.6
版本于2022-08-11上傳,若在mvn倉庫搜索不到,不要慌,可以先使用0.2.5
如果是gradle做項目管理,依賴同樣很簡單
// https://mvnrepository.com/artifact/com.github.liuyueyi/quick-transfer-core implementation 'com.github.liuyueyi:quick-transfer-core:0.2.6'
此外,針對網絡不好的小伙伴,也可以通過jitpack的方式導入依賴,具體姿勢如下
<repositories> <repository> <id>jitpack.io</id> <url>https://jitpack.io</url> </repository> </repositories> <dependency> <groupId>com.github.liuyueyi.quick-chinese-transfer</groupId> <artifactId>quick-transfer-core</artifactId> <version>0.2.6</version> </dependency>
allprojects { repositories { ... maven { url 'https://jitpack.io' } } } dependencies { implementation 'com.github.liuyueyi.quick-chinese-transfer:quick-transfer-core:0.2.6' }
環(huán)境準備完畢之后,可以直接進行使用了,使用姿勢非常非常非常的簡單
public void testTrans() { String text = "這斜月三星洞…… 長壽面,孫悟空,豬八戒,唐僧,沙和尚,白龍馬,李靖,托塔天王, 戲說西游,許多人都這樣說,收拾一下,拾金不昧;纔=才"; // 簡體轉繁體 String out = ChineseUtils.s2t(text); System.out.println("s2t -->" + out); // 簡體轉香港繁體 String hkOut = ChineseUtils.s2hk(text); System.out.println("s2hk -->" + hkOut); // 簡體轉臺灣繁體 String twOut = ChineseUtils.s2tw(text); System.out.println("s2tw --> " + twOut); // 繁體轉簡體 String origin = ChineseUtils.t2s(out); System.out.println("t2s -->" + origin); // 香港繁體轉簡體 System.out.println("hk2s -->" + ChineseUtils.hk2s(hkOut)); // 臺灣繁體轉簡體 System.out.println("tw2s -->" + ChineseUtils.tw2s(twOut)); }
入口類 ChineseUtils
支持簡繁互轉,這里區(qū)分了香港繁體 + 臺灣繁體,兩者的主要區(qū)別在于某些字、詞的叫法不一樣
通常來講,使用最簡單的簡繁互即可
上面的case輸出結果如下:
s2t -->這斜月三星洞…… 長壽麪,孫悟空,豬八戒,唐僧,沙和尚,白龍馬,李靖,托塔天王, 戲說西遊,許多人都這樣說,收拾一下,拾金不昧;纔=才
s2hk -->這斜月三星洞…… 長壽麪,孫悟空,豬八戒,唐僧,沙和尚,白龍馬,李靖,托塔天王, 戲説西遊,許多人都這樣説,收拾一下,拾金不昧;才=才
s2tw --> 這斜月三星洞…… 長壽麵,孫悟空,豬八戒,唐僧,沙和尚,白龍馬,李靖,托塔天王, 戲說西遊,許多人都這樣說,收拾一下,拾金不昧;才=才
t2s -->這斜月三星洞…… 長壽面,孫悟空,豬八戒,唐僧,沙和尚,白龍馬,李靖,托塔天王, 戲說西游,許多人都這樣說,收拾一下,拾金不昧;才=才
hk2s -->這斜月三星洞…… 長壽面,孫悟空,豬八戒,唐僧,沙和尚,白龍馬,李靖,托塔天王, 戲說西游,許多人都這樣說,收拾一下,拾金不昧;才=才
tw2s -->這斜月三星洞…… 長壽面,孫悟空,豬八戒,唐僧,沙和尚,白龍馬,李靖,托塔天王, 戲說西游,許多人都這樣說,收拾一下,拾金不昧;才=才
簡繁轉換,核心在于詞典的管理,改類庫在首次實現轉換的時候,會加載詞典,并解析為內部的數據結構Dict;因此第一次調用時,會出現冷啟動的耗時高問題
基于此,可以再合適的地方先預熱加載詞典;官方提供了同步預熱/異步預熱兩種方式,如
// 預熱加載所有的詞典 ChineseUtils.preLoad(true, TransType.values()); // 預加載簡體轉繁體詞典 ChineseUtils.preLoad(true, TransType.SIMPLE_TO_TRADITIONAL); // 預加載簡繁互轉詞典 ChineseUtils.preLoad(true, TransType.SIMPLE_TO_TRADITIONAL, TransType.TRADITIONAL_TO_SIMPLE);
preLoad
方法的第一個參數,就是用來控制同步還是異步的情況
后面的參數則為希望加載的詞典
同樣有了預熱就有卸載,對于客戶端的小伙伴來說可能更關注這一點的內存占用;對于不需要的詞典,可以指定卸載
// 卸載所有詞典 ChineseUtils.unLoad(TransType.values()); // 卸載簡繁互轉詞典 ChineseUtils.unLoad(TransType.SIMPLE_TO_TRADITIONAL, TransType.TRADITIONAL_TO_SIMPLE);
在第一節(jié)的使用實例中,提供了各種特有的方法來實現轉換;同樣也提供一個統(tǒng)一的方法,根據傳參的詞典類型來進行轉換;適用于統(tǒng)一api接口的設計,根據傳參來返回對應的結果場景
ChineseUtils.transfer("一灰灰blog", TransType.SIMPLE_TO_TRADITIONAL);
感謝各位的閱讀,以上就是“java開源好用的簡繁轉換類庫實例分析”的內容了,經過本文的學習后,相信大家對java開源好用的簡繁轉換類庫實例分析這一問題有了更深刻的體會,具體使用情況還需要大家實踐驗證。這里是億速云,小編將為大家推送更多相關知識點的文章,歡迎關注!
免責聲明:本站發(fā)布的內容(圖片、視頻和文字)以原創(chuàng)、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。