pinyin4j的使用很方便,一般转换只需要使用PinyinHelper类的静态工具方法即可:

String[] pinyin = PinyinHelper.toHanyuPinyinStringArray(‘赵’);

//该类还有其他的拼音转换形式,但是基本上用不到,就不介绍了

返回的数组即是该字符的拼音,如上例就是pinyin[0]=zhao,后面的数字代表声调,声调为5表示轻读,无声调。之所谓返回数组,是因为被判定的汉字有可能有多个读音。如果输入的参数不是汉字,则返回null。

拼音格式化

如果对于拼音转换后的结果有一些特定的格式要求目前pinyin4j支持:

声调格式化。例如:“刘”字的格式化后为“liu2”或“liu”或“liú”

对特殊拼音ü的的显示格式。例如“u:”或“v”或“ü”

大小写的转换。例如:“liu2”或“LIU2”

以上这些格式可以混合使用,下面就来介绍具体的使用方法,首先需要创建格式化对象HanyuPinyinOutputFormat,例如:

HanyuPinyinOutputFormat outputFormat = new HanyuPinyinOutputFormat();

然后分别调用outputFormat的set方法设置上述一些格式要求:

设置声调格式:

outputFormat.setToneType(HanyuPinyinToneType);

方法参数HanyuPinyinToneType有以下常量对象:

HanyuPinyinToneType.WITH_TONE_NUMBER 用数字表示声调,例如:zhao4

HanyuPinyinToneType.WITHOUT_TONE 无声调表示,例如:zhao

HanyuPinyinToneType.WITH_TONE_MARK 用声调符号表示,例如:zhao

设置特殊拼音ü的显示格式:

outputFormat.setVCharType(HanyuPinyinVCharType);

方法参数HanyuPinyinVCharType有以下常量对象:

HanyuPinyinVCharType.WITH_U_AND_COLON 以U和一个冒号表示该拼音,

HanyuPinyinVCharType.WITH_V 以V表示该字符,

HanyuPinyinVCharType.WITH_U_UNICODE

设置大小写格式

outputFormat.setCaseType(HanyuPinyinCaseType);

HanyuPinyinCaseType.LOWERCASE 转换后以全小写方式输出

HanyuPinyinCaseType.UPPERCASE 转换后以全大写方式输出

设置好格式对象后还是利用上述的工具类方法进行拼音转换,只不过需要将格式化对象当成方法参数传入转换方法,告知要转换的格式要求:

String[] pinyin = PinyinHelper.toHanyuPinyinStringArray(‘刘’, outputFormat);

但该方法会有异常抛出,注意处理。

public class Text {

public static String[] Convert( char hz) {

HanyuPinyinOutputFormat outputFormat = new HanyuPinyinOutputFormat();

outputFormat.setCaseType(HanyuPinyinCaseType.LOWERCASE);

outputFormat.setVCharType(HanyuPinyinVCharType.WITH_U_UNICODE);

outputFormat.setToneType(HanyuPinyinToneType.WITH_TONE_MARK);

String[] Pinyin = null;

try {

Pinyin = PinyinHelper.toHanyuPinyinStringArray(hz,outputFormat);

} catch (BadHanyuPinyinOutputFormatCombination e) {

e.printStackTrace();

}

return Pinyin;

}

public static void main(String[] args) {

String string = "我是中国人";

char str[] = string.toCharArray();

for(char s : str)

{

String[] string1 = Convert(s);

System.out.print(string1[0]+" ");

}

}

}

java 拼音识别_java 解析汉字拼音相关推荐

  1. java 获取拼音码_Java获取汉字拼音的全拼和首拼实现代码分享

    import java.util.Collections; import java.util.Iterator; import java.util.LinkedHashMap; import java ...

  2. java 拼音识别_JAVA实现汉字转拼音

    packageedu.ws;importcom.github.stuxuhai.jpinyin.ChineseHelper;importcom.github.stuxuhai.jpinyin.Piny ...

  3. java 中文替换_java字符串汉字替换成拼音

    String str ="jhuywy48r在74yhf47tf6中7dgc782有3y..."; 后面还有几百个汉字 汉字的个数不确定 我想把里面所有的 汉字 换成对应的 拼音 ...

  4. java 使用sourceforge.pinyin4j查询汉字拼音

    在我们的系统中,可能经常需要按首字母排序一些信息(比如淘宝商城的品牌列表字母序排列),那么我们就需要一个能够根据汉字查询对应的拼音,取出拼音的首字母即可. 我们使用sourceforge.pinyin ...

  5. python怎么识别拼音-python获取一组汉字拼音首字母的方法

    本文实例讲述了python获取一组汉字拼音首字母的方法.分享给大家供大家参考.具体实现方法如下: #!/usr/bin/env python # -*- coding: utf-8 -*- def m ...

  6. MySQL按照汉字拼音A-Z排序或者汉字拼音和英文字母混合A-Z排序

    1.按照汉字拼音A-Z排序 主要用到convert这个函数把字符编码转换一下,这里转成gbk select * from 表名 where name like '%%' order by conver ...

  7. java全拼_Java获取汉字对应的拼音(全拼或首字母)

    java 根据汉语字符串获得对应的拼音字符串或者拼音首字母字符串等操作,需要添加jar包: 引入包 代码实现: import java.util.regex.matcher; import java. ...

  8. java获取汉字的拼音首字母_Java获取汉字拼音首字母

    根据网上C#版和JAVA版改的.代码很短,但有些复杂的汉字取不了拼音,如"鑫"等.适用一般不是很复杂的情况. 如要更完整的版本,可以使用这个开源的pinyin4j组件.packag ...

  9. java 汉字转拼音缩写_java文字转拼音、首字母缩写

    public class Pinyin { /** * 得到 全拼 * * @param src * @return */ public static String getPingYin(String ...

  10. java姓名排序_java、android拼音,中文姓名排序

    http://blog.sina.com.cn/s/blog_81a9aa7e0100tizj.html 在java或者是android编程的时候,我们经常要用到对姓名或者其他字符串排序,现在我写写自 ...

最新文章

  1. R语言——linux离线安装R包
  2. 并行算法设计与性能优化_CME 323: 分布式算法与优化(1)
  3. 如何使用代码区分service contract和service contract quotation
  4. mysql数据备份与恢复_MySQL数据备份与恢复
  5. 允许服务与桌面交互_vivo 正式推出 Origin OS,融合自然设计与全新交互_搜狐汽车...
  6. Redis笔记之基本数据结构 字典
  7. php 谷歌搜索排名,我想在php中搜索谷歌搜索结果
  8. windows 下安装 mysql
  9. 电信公网ip和内网ip的区别_私有IP共有IP和弹性IP的区别
  10. FFmpeg合并多个ts视频文件
  11. 向日葵Linux传文件,教您玩转Linux远程登录,如何用向日葵远程登录?
  12. 独创圆柱形投影,索尼高透光HOE全息显示方案详解
  13. mysql入侵服务器_记通过mysql数据库成功入侵到服务器内部的渗透实战
  14. python-sklearn数据分析-线性回归和支持向量机(SVM)回归预测(实战)
  15. 2019-成长的一年
  16. 计算机中丢失audiodsp,AudioDsp.dll(缺失AudioDsp.dll文件修复工具)V1.0 免费版
  17. 从删库到跑路再到权限管理
  18. 2021-5-21-博弈论--金刚狼与小狗灰
  19. 我写了一个微信排版编辑器(已开源)
  20. 项目管理之人力资源管理

热门文章

  1. CentOS6 的yum源配置
  2. 电阻中联分压电路的计算
  3. JAVA控制stl文件导出图片_stl2png: 将PRO/E等3D建模工具生成的STL格式的模型文件生成缩略图的工具。特别适合体积较大的STL文件。...
  4. css的鼠标手势总结
  5. 基于改进的CASA模型反演NPP
  6. 万维c语言作业,万维考试系统-c语言题库-含题目-程序设计题导出-113道.doc
  7. Google Guice
  8. 怎么把汉字转换成URL编码
  9. 完美解决Teamview12 过期之后不能用问题
  10. 无线鼠标服务器,remote mouse