Android提供了汉字转拼音的类。但是这个类是在联系人app下的。具体目录是packages/providers/ContactsProvider/src/com/android/providers/contacts的HanziToPinyin.java文件。如果想要这个工具类,可以直接拷贝来用。


获取一段汉字全拼方法:


    public String getFullPinYin(String source){        if (!Arrays.asList(Collator.getAvailableLocales()).contains(Locale.CHINA)) {            return source;        }         ArrayList tokens = HanziToPinyin.getInstance().get(source);        if (tokens == null || tokens.size() == 0) {        return source;        }        StringBuffer result = new StringBuffer();        for (Token token : tokens) {if (token.type == Token.PINYIN) {result.append(token.target);} else {result.append(token.source);}}        return result.toString();    }

获取一段汉字简拼的方法:

    public String getFirstPinYin(String source){        if (!Arrays.asList(Collator.getAvailableLocales()).contains(Locale.CHINA)) {            return source;        }         ArrayList tokens = HanziToPinyin.getInstance().get(source);        if (tokens == null || tokens.size() == 0) {        return source;        }        StringBuffer result = new StringBuffer();        for (Token token : tokens) {if (token.type == Token.PINYIN) {result.append(token.target.charAt(0));} else {result.append("#");}}        return result.toString();    }

举例:

String str = "我是中国人";getFullPinYin(str);    //返回的是 WOSHIZHONGGUORENgetFirstPinYin(str);    //返回的是WSZGR



更多相关文章

  1. ListView去掉分割线的几种方法
  2. SDK Platform Tools component is missing! Please use the SDK
  3. Android 汉字转拼音
  4. Android Market google play store帐号注册方法流程 及发布应用
  5. Android 实现全屏显示的几种方法整理
  6. Android中TextView中内容不换行的解决方法
  7. Android模拟、实现、触发系统按键事件的方法
  8. android 2.2+ 完全退出程序的方法
  9. android MediaPlayer出现RuntimeException: failure code: -38崩

随机推荐

  1. Hadoop3.x入门:完全分布式Hadoop集群安装
  2. Spark2.x精通:BlockManagerMaster源码剖析
  3. Spark2.x精通:Checkpoint源码深度剖析
  4. Spark2.x精通:Executor端BlockManager源码
  5. cockpit监控系统
  6. MySQL常用的查询操作
  7. 17、运维核心技能-Linux系统下用户权限管
  8. 想找好用的BI软件?看这一篇就够了:2021年好
  9. 浅谈MySQL索引...
  10. 三层口聚合技术笔记 (华为肖哥)