国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁(yè) > 編程 > Java > 正文

Java中漢字轉(zhuǎn)拼音pinyin4j用法實(shí)例分析

2019-11-26 14:44:33
字體:
來(lái)源:轉(zhuǎn)載
供稿:網(wǎng)友

本文實(shí)例講述了Java中漢字轉(zhuǎn)拼音pinyin4j用法。分享給大家供大家參考,具體如下:

漢字轉(zhuǎn)換拼音在日常開(kāi)發(fā)中是個(gè)很常見(jiàn)的問(wèn)題。例如我們偉大的12306,在地名中輸入“WH”,就會(huì)出現(xiàn)“武漢”“蕪湖”“威海”等地名,輸入“WUHU”就會(huì)出現(xiàn)“蕪湖”。

Java獲取漢字的拼音,pinyin4j這個(gè)庫(kù)可以很好的解決這個(gè)問(wèn)題。

下載地址:http://sourceforge.net/projects/pinyin4j/

下載解壓,里面有個(gè)pinyin4j-2.5.0.jar,使用這個(gè)庫(kù)即可。

漢字轉(zhuǎn)拼音:

復(fù)制代碼 代碼如下:
String[] pinyin = PinyinHelper.toHanyuPinyinStringArray('重');

上面這行代碼就是單個(gè)漢字轉(zhuǎn)拼音了,例如“重”字,該方法返回一個(gè)String類型的數(shù)組:

"zhong4"

"chong2"

“重”是一個(gè)多音字,該方法的返回?cái)?shù)組包含這個(gè)字的所有讀音的拼音。每個(gè)讀音最后有個(gè)數(shù)字就是音調(diào)(第一聲 第二聲 第三聲 第四聲,這個(gè)不用解釋了)。

上面是最簡(jiǎn)單的一種獲取單個(gè)漢字的方式,還可以使用HanyuPinyinOutputFormat來(lái)格式化返回拼音的格式。

HanyuPinyinOutputFormat format = new HanyuPinyinOutputFormat();// UPPERCASE:大寫 (ZHONG)// LOWERCASE:小寫 (zhong)format.setCaseType(HanyuPinyinCaseType.LOWERCASE);// WITHOUT_TONE:無(wú)音標(biāo) (zhong)// WITH_TONE_NUMBER:1-4數(shù)字表示英標(biāo) (zhong4)// WITH_TONE_MARK:直接用音標(biāo)符(必須WITH_U_UNICODE否則異常) (zhòng)format.setToneType(HanyuPinyinToneType.WITH_TONE_MARK);// WITH_V:用v表示ü (nv)// WITH_U_AND_COLON:用"u:"表示ü (nu:)// WITH_U_UNICODE:直接用ü (nü)format.setVCharType(HanyuPinyinVCharType.WITH_U_UNICODE);String[] pinyin = PinyinHelper.toHanyuPinyinStringArray('重', format);toHanyuPinyinStringArray如果傳入的字符不是漢字不能轉(zhuǎn)換成拼音,那么會(huì)直接返回null。

雖然pinyin4j很好用,但是還是有局限的。以上代碼只能獲取單個(gè)漢字的拼音,但是不能獲取一個(gè)包含多音字的詞的拼音。例如“重慶”,無(wú)法判斷到底是“chongqing”還是“zhongqing”,pinyin4j不能通過(guò)上下文來(lái)判斷多音字的讀音。

所以,在獲取一個(gè)包含多音字的詞語(yǔ)的讀音,可以返回一個(gè)列表,正確的讀音只能是人工判斷選擇。

希望本文所述對(duì)大家Java程序設(shè)計(jì)有所幫助。

發(fā)表評(píng)論 共有條評(píng)論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 泰兴市| 仁化县| 乐清市| 增城市| 磐安县| 客服| 抚顺县| 丽江市| 淄博市| 高阳县| 正阳县| 东乌珠穆沁旗| 隆昌县| 嘉义县| 江永县| 丹巴县| 介休市| 亳州市| 宁明县| 宜都市| 深泽县| 富蕴县| 正阳县| 仪征市| 兰西县| 永康市| 苗栗市| 金沙县| 福鼎市| 陆河县| 大名县| 海兴县| 辽源市| 河南省| 始兴县| 霍邱县| 桐梓县| 绥芬河市| 洞口县| 城市| 敖汉旗|