源码网商城,靠谱的源码在线交易网站 我的订单 购物车 帮助

源码网商城

Java实现的汉语拼音工具类完整实例

  • 时间:2020-02-17 07:39 编辑: 来源: 阅读:
  • 扫一扫,手机访问
摘要:Java实现的汉语拼音工具类完整实例
本文实例讲述了Java实现的汉语拼音工具类。分享给大家供大家参考,具体如下:
package 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;
/**
 * 汉语拼音工具类
 * Created by charlin on 2017/9/3.
 */
public class PingYinUtil {
 /**
  * 获得所有拼音字母
  * @param args
  * @return
  */
 public static String getAllLeter(String args) {
  String result = "";
  char[] charArray = args.toCharArray();
  String[] strArr = new String[charArray.length];
  HanyuPinyinOutputFormat format = new HanyuPinyinOutputFormat();
  format.setCaseType(HanyuPinyinCaseType.LOWERCASE);
  format.setToneType(HanyuPinyinToneType.WITHOUT_TONE);
  format.setVCharType(HanyuPinyinVCharType.WITH_V);
  int len = charArray.length;
  for (int i = 0; i <len ; i++) {
   try {
    strArr = PinyinHelper.toHanyuPinyinStringArray(charArray[i], format);
    if (strArr == null){
     result += charArray[i];
    }else {
     result += strArr[0];
    }
   } catch (BadHanyuPinyinOutputFormatCombination e) {
    e.printStackTrace();
   }
  }
  return result;
 }
 /**
  * 获得每个汉字的首字母
  * @param args
  * @return
  */
 public static String getFirstLeter(String args) {
  String result = "";
  char[] charArray = args.toCharArray();
  String[] strArr = new String[charArray.length];
  HanyuPinyinOutputFormat format = new HanyuPinyinOutputFormat();
  format.setCaseType(HanyuPinyinCaseType.LOWERCASE);
  format.setToneType(HanyuPinyinToneType.WITHOUT_TONE);
  format.setVCharType(HanyuPinyinVCharType.WITH_V);
  int len = charArray.length;
  for (int i = 0; i <len ; i++) {
   try {
    strArr = PinyinHelper.toHanyuPinyinStringArray(charArray[i], format);
    if (strArr == null){
     result += charArray[i];
    }else {
     result += strArr[0].substring(0,1);
    }
   } catch (BadHanyuPinyinOutputFormatCombination e) {
    e.printStackTrace();
   }
  }
  return result;
 }
 public static void main(String[] args) {
  System.out.println("编程素材网测试结果:");
  System.out.println("getAllLeter==" + getAllLeter("你好啊"));
  System.out.println("getFirstLeter==" + getFirstLeter("你好啊"));
 }
}

运行结果: [img]http://img.1sucai.cn/uploads/article/2018010710/20180107100135_0_31780.jpg[/img] [b]PS:这里再为大家提供几款本站拼音与字母相关工具供大家参考:[/b] [b]在线中英文根据首字母排序工具: [/b][url=http://tools.1sucai.cn/aideddesign/zh_paixu]http://tools.1sucai.cn/aideddesign/zh_paixu[/url] [b]在线汉字转换成拼音工具: [/b][url=http://tools.1sucai.cn/transcoding/pinyin]http://tools.1sucai.cn/transcoding/pinyin[/url] [b]在线中文汉字转拼音工具: [/b][url=http://tools.1sucai.cn/transcoding/hanzi2pinyin]http://tools.1sucai.cn/transcoding/hanzi2pinyin[/url] [b]在线中文汉字拼音对照转换工具: [/b][url=http://tools.1sucai.cn/transcoding/zh_pinyin]http://tools.1sucai.cn/transcoding/zh_pinyin[/url] [b]在线字母大小写转换工具: [/b][url=http://tools.1sucai.cn/transcoding/upper]http://tools.1sucai.cn/transcoding/upper[/url] [b]附:[/b]本例中使用到的net.sourceforge.pinyin4j包可点击此处[url=http://xiazai.1sucai.cn/201711/yuanma/pinyin4j-2.5.0(1sucai.cn).rar][b]本站下载pinyin4j的jar包文件[/b][/url]。 关于eclipse导入jar包的方法可参考本站[url=http://www.1sucai.cn/softjc/552873.html]http://www.1sucai.cn/softjc/552873.html[/url] 更多关于java相关内容感兴趣的读者可查看本站专题:《[url=http://www.1sucai.cn/Special/950.htm]Java数组操作技巧总结[/url]》、《[url=http://www.1sucai.cn/Special/947.htm]Java字符与字符串操作技巧总结[/url]》、《[url=http://www.1sucai.cn/Special/949.htm]Java数学运算技巧总结[/url]》、《[url=http://www.1sucai.cn/Special/632.htm]Java数据结构与算法教程[/url]》及《[url=http://www.1sucai.cn/Special/830.htm]Java操作DOM节点技巧总结[/url]》 希望本文所述对大家java程序设计有所帮助。
  • 全部评论(0)
联系客服
客服电话:
400-000-3129
微信版

扫一扫进微信版
返回顶部