一、前言

工作中有时候会遇到汉字拼音转换的需求,例如:用户首字母搜索某个内容的时候,wzry 可搜索 王者荣耀相关的。

这里推荐使用Pinyin4j,它是sourceforge.net上的一个开源项目,提供了许多强大的处理汉语拼音相关问题的方法。详情可参考:http://pinyin4j.sourceforge.net/

二、使用Pinyin4j

1、maven项目添加依赖包

com.belerweb

pinyin4j

2.5.0

2、汉字转拼音工具类(具体看注释)

package com.sam.util;

import net.sourceforge.pinyin4j.PinyinHelper;

import net.sourceforge.pinyin4j.format.HanyuPinyinOutputFormat;

import net.sourceforge.pinyin4j.format.HanyuPinyinToneType;

import net.sourceforge.pinyin4j.format.HanyuPinyinVCharType;

import net.sourceforge.pinyin4j.format.exception.BadHanyuPinyinOutputFormatCombination;

/**

* 中文汉字转拼音工具类

*

* @author sam

* @since 2017/5/10

*/

public class PinyinUtil {

public static void main(String[] args) throws BadHanyuPinyinOutputFormatCombination {

String str = PinyinUtil.getPinYinHeadChar("小超人");

System.out.println(str);

// String[] strs = PinyinUtil.getPinYin('空');

// for (String str : strs) {

// System.out.println(str);

// }

}

/**

* 传入中文获取首字母 (小写)

* 如:小超人 -> xcr

*

* @param str 需要转化的中文字符串

* @return

*/

public static String getPinYinHeadChar(String str) {

String convert = "";

for (int j = 0; j < str.length(); j++) {

char word = str.charAt(j);

String[] pinyinArray = PinyinHelper.toHanyuPinyinStringArray(word);

if (pinyinArray != null) {

convert += pinyinArray[0].charAt(0);

} else {

convert += word;

}

}

return convert;

}

/**

* 获取中文字的拼音(多音字,拼音后的数字代表第几声)

* 如:空 -> kong1 kong4

*

* @param word

* @return

*/

public static String[] getPinYin(char word) {

return PinyinHelper.toHanyuPinyinStringArray(word);

}

/**

* 获取中文字的拼音(多音字,拼音上的符号代表第几声)

* 如:空 -> kōng kòng

*

* @param word

* @return

*/

public static String[] getPinYinWithToneMark(char word) throws BadHanyuPinyinOutputFormatCombination {

HanyuPinyinOutputFormat format = new HanyuPinyinOutputFormat();

format.setToneType(HanyuPinyinToneType.WITH_TONE_MARK);

format.setVCharType(HanyuPinyinVCharType.WITH_U_UNICODE);

return PinyinHelper.toHanyuPinyinStringArray(word, format);

}

}

java pinyin4j_java实现中文汉字转拼音 Pinyin4j的基本用法相关推荐

  1. java实现中文汉字转拼音 Pinyin4j的基本用法

    一.前言 工作中有时候会遇到汉字拼音转换的需求,例如:用户首字母搜索某个内容的时候,wzry 可搜索 王者荣耀相关的. 这里推荐使用Pinyin4j,它是sourceforge.net上的一个开源项目 ...

  2. java pinyin4j_Java汉字转拼音pinyin4j用法详解

    一.工具介绍 pinyin4j 是一个支持将简体和繁体中文转换到成拼音的Java开源类库: 1. 功能 支持同一汉字有多个发音 还支持拼音的格式化输出,比如第几声之类的, 同时支持简体中文.繁体中文转 ...

  3. JAVA实现汉字转换为拼音 pinyin4j/JPinyin

    转载自  JAVA实现汉字转换为拼音 pinyin4j/JPinyin 在项目中经常会遇到需求用户输入汉字后转换为拼音的场景,比如说通讯录,就会要求按名字首字符发音排序,如果自己写实现这方面的功能是个 ...

  4. Java中汉字转拼音pinyin4j的用法

    pinyin4j 是一个支持将简体和繁体中文转换到成拼音的Java开源类库: 依赖jar包导入 <!-- pinyin4j 汉语转拼音 --><dependency><g ...

  5. java hanyupinyinoutputformat();_Java汉字转拼音pinyin4j用法

    Java汉字转拼音pinyin4j用法 在学习编程的过程中,我觉得不止要获得课本的知识, 更多的是通过学习技术知识提高解决问题的能力,这样我们才能走在最前方,更多Java学习,请登陆疯狂java官网. ...

  6. java 判断汉字音调_Java中汉字转拼音pinyin4j用法实例分析

    本文实例讲述了Java中汉字转拼音pinyin4j用法.分享给大家供大家参考,具体如下: 汉字转换拼音在日常开发中是个很常见的问题.例如我们伟大的12306,在地名中输入"WH", ...

  7. android 汉字转拼音pinyin4j包

    android 汉字转拼音pinyin4j包 转载于:https://www.cnblogs.com/longhs/p/3148276.html

  8. mysql root dengru_Mysql学习Mysql中文汉字转拼音的实现(每个汉字转换全拼)

    <Mysql学习Mysql中文汉字转拼音的实现(每个汉字转换全拼)>要点: 本文介绍了Mysql学习Mysql中文汉字转拼音的实现(每个汉字转换全拼),希望对您有用.如果有疑问,可以联系我 ...

  9. mysql中的汉字怎么转换_Mysql中文汉字转拼音的实现(每个汉字转换全拼)

    一.创建拼音对照表 代码如下: -- 创建汉字拼音对照临时表 CREATE TABLE IF NOT EXISTS `t_base_pinyin` ( `pin_yin_` varchar(255) ...

最新文章

  1. 版本变迁_文科生学电脑 - git和版本控制(一)
  2. Docker实践(6)—CentOS7上部署Kubernetes
  3. Git学习系列之Windows上安装Git之后的一些配置(图文详解)
  4. 将Java程序变成可执行文件的简单方法
  5. Java设计流程执行器_Java进阶面试精选系列:SpringMVC+SpringBoot+Hibernate+Mybatis+设计模式...
  6. nginx mozilla_Mozilla Firefox 11岁生日快乐!
  7. linux openssh 升级最新版本
  8. 无线WIFI WPS认证机制破解
  9. C语言通讯录—简单模拟实现
  10. 一个轻量级多功能免费开源web聊天室
  11. 高级java技术栈图
  12. STN:Spatial Transformer Networks 空间变换网络
  13. (端到端多尺度去雾算法)FAMED-Net: A Fast and Accurate Multi-scale End-to-end Dehazing Network
  14. 如何才能不改变图片的像素大小,只改变图片的文件大小
  15. java jxl导出excel小结
  16. 计算机三级网络技术大题详解,教你快速拿到60分,附三级题库绿色免安装
  17. openmv 神经网络 超出内存_星瞳科技OpenMV视频教程22-神经网络cifar_10
  18. vue使用trim修饰符去掉空格
  19. 中国新四大发明诞生 主打吃逛买以互联网为主
  20. css中的单位换算_css 长度单位转换器

热门文章

  1. 4天完成一个物联网项目
  2. 魅蓝5s 显示无服务器,性能充沛 魅蓝5s运行《王者荣耀》无压力通过
  3. PS2019污点修复画笔工具、修复画笔工具、修补工具、内容感知移动工具
  4. “微信”带来的新启示
  5. FileWriter写出数据 [Java]
  6. CAD进阶练习题(一)
  7. python 串口测试,基于python串口通信简单实现物联网设备的自动化测试
  8. 计算机毕业设计Java学校食堂库存在线管理(源码+系统+mysql数据库+Lw文档)
  9. PT_随机变量离散型随机变量及其常见分布(二项分布/Possion分布)
  10. HTML设置文字与段落格式