欢迎来到天天文库
浏览记录
ID:8975277
大小:29.00 KB
页数:2页
时间:2018-04-13
《java汉字转拼音pinyin4j用法》由会员上传分享,免费在线阅读,更多相关内容在应用文档-天天文库。
1、Java汉字转拼音pinyin4j用法 在学习编程的过程中,我觉得不止要获得课本的知识,更多的是通过学习技术知识提高解决问题的能力,这样我们才能走在最前方,更多Java学习,请登陆疯狂java官网。 汉字转换拼音在日常开发中是个很常见的问题。例如我们伟大的12306,在地名中输入“WH”,就会出现“武汉”“芜湖”“威海”等地名,输入“WUHU”就会出现“芜湖”。 Java获取汉字的拼音,pinyin4j这个库可以很好的解决这个问题。 下载解压,里面有个pinyin4j-2.5.0.jar,使用这个库即可。 汉字转拼音:
2、 String[]pinyin=PinyinHelper.toHanyuPinyinStringArray('重'); 上面这行代码就是单个汉字转拼音了,例如“重”字,该方法返回一个String类型的数组: "zhong4" "chong2" “重”是一个多音字,该方法的返回数组包含这个字的所有读音的拼音。每个读音最后有个数字就是音调(第一声第二声第三声第四声,这个不用解释了)。 上面是最简单的一种获取单个汉字的方式,还可以使用HanyuPinyinOutputFormat来格式化返回拼音的格式。 [java]
3、HanyuPinyinOutputFormatformat=newHanyuPinyinOutputFormat(); //UPPERCASE:大写(ZHONG) //LOWERCASE:小写(zhong) format.setCaseType(HanyuPinyinCaseType.LOWERCASE); //WITHOUT_TONE:无音标(zhong) //WITH_TONE_NUMBER:1-4数字表示英标(zhong4) //WITH_TONE_MARK:直接用音标符(必须WITH_U_UNICODE否则异
4、常)(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('重',fo
5、rmat); toHanyuPinyinStringArray如果传入的字符不是汉字不能转换成拼音,那么会直接返回null。 虽然pinyin4j很好用,但是还是有局限的。以上代码只能获取单个汉字的拼音,但是不能获取一个包含多音字的词的拼音。例如“重庆”,无法判断到底是“chongqing”还是“zhongqing”,pinyin4j不能通过上下文来判断多音字的读音。 所以,在获取一个包含多音字的词语的读音,可以返回一个列表,正确的读音只能是人工判断选择。 疯狂Java培训专注软件开发培训,提升学员就业能力,重点提升实践
6、动手能力。技术知识沉淀深厚的老师,让你感受Java的魅力,激发你对于编程的热爱,让你在半年的时间内掌握8-10万的代码量,掌握Java核心技术,成为真正的技术高手;通过大量全真企业项目疯狂训练,迅速积累项目经验。让你成为技能型的现代化高端人才,迅速获得高薪就业!时间不等人,赶紧联系我们吧!
此文档下载收益归作者所有