偶然间看到了pinyin4j,在网上搜到的都是同一个例子,所以跟着敲了下
1、首先下载pinyin4j的jar包,然后就可以开始使用了
package com.liuc.test;
import net.sourceforge.pinyin4j.PinyinHelper;
import net.sourceforge.pinyin4j.format.HanyuPinyinCaseType;
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;
public class Ping4jTest {
//将汉字转化为全拼
public static String getPinyin(String src){
char toChar[]=src.toCharArray();
String[] toCharCp=new String[toChar.length];
HanyuPinyinOutputFormat hanyuFormat=new HanyuPinyinOutputFormat();
hanyuFormat.setCaseType(HanyuPinyinCaseType.LOWERCASE);
hanyuFormat.setToneType(HanyuPinyinToneType.WITHOUT_TONE);
hanyuFormat.setVCharType(HanyuPinyinVCharType.WITH_V);
String ret="";
int to=toChar.length;
try {
for(int i=0;i<to;i++){
//判断是否为汉字字符
if(java.lang.Character.toString(toChar[i]).matches("[\\u4E00-\\u9FA5]+")){
toCharCp=PinyinHelper.toHanyuPinyinStringArray(toChar[i], hanyuFormat);
ret+=toCharCp[0];
}else{
ret=java.lang.Character.toString(toChar[i]);
}
}
} catch (BadHanyuPinyinOutputFormatCombination e) {
e.printStackTrace();
}
return ret;
}
//----------------------------------------返回中文的首字母--------------------
public static String getPinYinHeadChar(String str){
String convert="";
for (int i = 0; i < str.length(); i++) {
char word=str.charAt(i);
String[] pinYinArray=PinyinHelper.toHanyuPinyinStringArray(word);
if (pinYinArray!=null) {
convert+=pinYinArray[0].charAt(0);
}else {
convert+=word;
}
}
return convert;
}
//-------------------------将字符串转換为ASCII码-----------------------------
public static String getCnASCII(String cnStr){
StringBuffer strBuf=new StringBuffer();
byte[] bGBK=cnStr.getBytes();
for (int i = 0; i < bGBK.length; i++) {
strBuf.append(Integer.toHexString(bGBK[i]&0xff));
}
return strBuf.toString();
}
//--------------------------测试拼音转汉字是否正确----------------------------
public static void main(String[] args){
System.out.println(getPinyin("西安"));
//返回拼音的全拼样式
System.out.println(getPinYinHeadChar("西安"));
//返回拼音的首字母
System.out.println(getCnASCII("西安"));
//返回拼音的ASCII
System.out.println();
}
}
分享到:
相关推荐
Pinyin4j是一个功能强悍的汉语拼音工具包,是sourceforge.net上的一个开源项目。 包里面有 pinyin4j.zip pinyin4j.jar 两种
赠送jar包:pinyin4j-2.5.0.jar; 赠送原API文档:pinyin4j-2.5.0-javadoc.jar; 赠送源代码:pinyin4j-2.5.0-sources.jar; 赠送Maven依赖信息文件:pinyin4j-2.5.0.pom; 包含翻译后的API文档:pinyin4j-2.5.0-...
pinyin4j-2.5.1.jar、汉字转拼音 pinyin4j-2.5.1.jar、汉字转拼音 pinyin4j-2.5.1.jar、汉字转拼音
pinyin4j(解决多音字问题源码),pinyin4j源码没有解决多音字的问题,这是一个解决能解决多音字的pinyin4j源码,但是里面的词库不是很全,你可以根据自己的需要进行添加。
Pinyin4j的基本用法 1. 简单介绍 有时候,需要将汉字编程对应的拼音,以方便数据的处理。比如在Android手机应用的开发上,要查询联系人的姓名,通常都是用拼音进行查询的。比如要查询“曹孟德”,就可以输入“cmd”...
里面包含pinyin4j-2.5.0.jar和使用示例PinyinUtils.java,可以帮助使用者快速理解并使用pinyin4j-2.5.0.jar实现java汉字转拼音或拼音首字母
Java pinyin4j.jar中文转拼音 详细可查看我的博客https://me.csdn.net/Extraordinarylife 中《Java pinyin4j.jar中文转拼音 》
PinYin4jUtils PinYin4j使用案例
pinyin4j 工具类的jar包,基于maven的配置 <groupId>net.sourceforge.pinyin4j</groupId> <artifactId>pinyin4j <version>2.5.0 pinyin4j-2.5.0.jar pinyin4j-2.5.0.pom
pinyin4j-2.5.0.jar
pinyin4j最新jar包,包含反编译过的jar包源码文件,使用说明必看.
Pinyin4j是一个流行的Java库,支持中文字符和拼音之间的转换,拼音输出格式可以定制,在项目中经常会遇到需求用户输入汉字后转换为拼音的场景,这时候Pinyin4j就可以派上用场
Pinyin4j的基本用法 - 玄机逸士的专栏 - 博客频道 - CSDN.NET.html )
pinyin4j-2.5.0.jar PinYin4jUtils.java PinYin4jUtils.java
Pinyin4j是一个流行的Java库,支持中文字符和拼音之间的转换,拼音输出格式可以定制。 Pinyin4jUtils工具类是进行包装,进行支持一一些转换方法
Pinyin4j简单使用教程.docx,Pinyin4j简单使用教程.docx