探android汉字转拼音的一种方法

基于android studio 3.0

作者:fearlazy
主页:fearlazy.com

在做模糊匹配功能时,可能需要将汉字转换为拼音或拼音首字母。那么安卓中该如何实现汉字转拼音呢?这里介绍一种操作简单的方法,最简单的方法莫过于调用别人写好的库了。要更简单的话,就花点钱让我来做吧_ 。废话不多说直接看步骤。

1.添加依赖项,在build.gradle中的dependencies中添加 compile ‘com.belerweb:pinyin4j:2.5.0’ (记得要同步一下)

2.使用,使用到的关键类是PinyinHelper, 使用的函数是toHanyuPinyinStringArray。其功能是将一个字转化为拼音。所以一般使用遍历字符串实现转换。

3.例,

    String chinese = "测试的字符串";
    char[] chars = chinese.toCharArray();

    StringBuffer buffer = new StringBuffer(); //储存结果

  //转换函数用到的一些配置
    HanyuPinyinOutputFormat format = new HanyuPinyinOutputFormat();
    format.setCaseType(HanyuPinyinCaseType.LOWERCASE);  //转小写
    format.setToneType(HanyuPinyinToneType.WITHOUT_TONE); //不带音标

    for(int i = 0; i < chars.length; ++i){
        if(chars[i] > 128){
            try{
                buffer.append(PinyinHelper.toHanyuPinyinStringArray(chars[i],format)[0]);  //转换出的结果包含了多音字,这里简单粗暴的取了第一个拼音。
            }catch (Exception e){
                e.printStackTrace();
            }
        }else{ //非汉字
            buffer.append(chars[i]);
        }
    }

 buffer.toString(); //最终的结果"ceshidezifuchuan"
    原文作者:fearlazy
    原文地址: https://www.jianshu.com/p/5de7347b051d
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞