java中把汉字转换成简拼的实现代码

所属分类: 软件编程 / java 阅读数: 127
收藏 0 赞 0 分享
复制代码 代码如下:

public static void main(String[] args) {
  String str = null;
  str = "顾亮";
  System.out.println("Spell=" + toJP(str));

 }

 public static String toJP(String c){

     char[] chars = c.toCharArray();

     StringBuffer sb = new StringBuffer("");

     for(int i=0;i<chars.length;i++){
      sb.append(getJP(chars[i]));
     }

     return sb.toString().toUpperCase();
  }
  public static String getJP(char c)
      {
              byte[] array = new byte[2];
              try {
      array = String.valueOf(c).getBytes("gbk");
     } catch (UnsupportedEncodingException e) {
      // TODO Auto-generated catch block
      e.printStackTrace();
     }
              if(array.length<2)return String.valueOf(c);
              int i = (short)(array[0] - '/0' + 256) * 256 + ((short)(array[1] - '/0' + 256));
              if ( i < 0xB0A1) return String.valueOf(c);
              if ( i < 0xB0C5) return "a";
              if ( i < 0xB2C1) return "b";
              if ( i < 0xB4EE) return "c";
              if ( i < 0xB6EA) return "d";
              if ( i < 0xB7A2) return "e";
              if ( i < 0xB8C1) return "f";
              if ( i < 0xB9FE) return "g";
              if ( i < 0xBBF7) return "h";
              if ( i < 0xBFA6) return "j";
              if ( i < 0xC0AC) return "k";
              if ( i < 0xC2E8) return "l";
              if ( i < 0xC4C3) return "m";
              if ( i < 0xC5B6) return "n";
              if ( i < 0xC5BE) return "o";
              if ( i < 0xC6DA) return "p";
              if ( i < 0xC8BB) return "q";
              if ( i < 0xC8F6) return "r";
              if ( i < 0xCBFA) return "s";
              if ( i < 0xCDDA) return "t";
              if ( i < 0xCEF4) return "w";
              if ( i < 0xD1B9) return "x";
              if ( i < 0xD4D1) return "y";
              if ( i < 0xD7FA) return "z";
              return String.valueOf(c);
      }
更多精彩内容其他人还在看

Java实现一个简单的文件上传案例示例代码

这篇文章主要介绍了Java实现一个简单的文件上传案例,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
收藏 0 赞 0 分享

详解在spring中使用JdbcTemplate操作数据库的几种方式

这篇文章主要介绍了详解在spring中使用JdbcTemplate操作数据库的几种方式,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
收藏 0 赞 0 分享

java中的switch case语句使用详解

这篇文章主要介绍了java中的switch case语句使用详解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
收藏 0 赞 0 分享

深入理解Java 线程池

这篇文章主要介绍了Java 线程池的相关资料,文中讲解非常细致,帮助大家更好的理解和学习,感兴趣的朋友可以了解下
收藏 0 赞 0 分享

详解mybatis #{}和${}的区别、传参、基本语法

这篇文章主要介绍了mybatis #{}和${}的区别、传参、基本语法,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
收藏 0 赞 0 分享

MyBatis 中 ${}和 #{}的正确使用方法(千万不要乱用)

这篇文章主要介绍了MyBatis 中 ${}和 #{}的正确使用方法,本文给大家提到了MyBatis 中 ${}和 #{}的区别,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
收藏 0 赞 0 分享

详解Mybatis中的 ${} 和 #{}区别与用法

这篇文章主要介绍了Mybatis中的 ${} 和 #{}区别与用法,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
收藏 0 赞 0 分享

Maven安装过程图文详解

这篇文章主要介绍了Maven安装过程,本文通过图文并茂的形式给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友参考下吧
收藏 0 赞 0 分享

SpringBoot登录拦截配置详解(实测可用)

这篇文章主要介绍了SpringBoot登录拦截配置详解(实测可用),文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
收藏 0 赞 0 分享

JAVA 内存溢出案例汇总

这篇文章主要介绍了JAVA 内存溢出案例的汇总,文中讲解非常细致,帮助各位工作学习时避免内存溢出,感兴趣的朋友可以了解下
收藏 0 赞 0 分享
查看更多