RSS
热门关键字:  java  Ajax  JSP  JSF  Struts
当前位置 : 首页>Java>列表

JAVA实现把汉字转化成拼音

来源: 作者: 时间:2008-03-03 点击:

    spellPut("zhu", -10519);
    spellPut("zhua", -10331);
    spellPut("zhuai", -10329);
    spellPut("zhuan", -10328);
    spellPut("zhuang", -10322);
    spellPut("zhui", -10315);
    spellPut("zhun", -10309);
    spellPut("zhuo", -10307);
    spellPut("zi", -10296);
    spellPut("zong", -10281);
    spellPut("zou", -10274);
    spellPut("zu", -10270);
    spellPut("zuan", -10262);
    spellPut("zui", -10260);
    spellPut("zun", -10256);
    spellPut("zuo", -10254);
  }

  /**
   * 获得单个汉字的Ascii.
   * @param cn char
   * 汉字字符
   * @return int
   * 错误返回 0,否则返回ascii
   */
  public static int getCnAscii(char cn)
  {
    byte[] bytes = (String.valueOf(cn)).getBytes();
    if(bytes == null || bytes.length > 2 || bytes.length <= 0){ //错误
      return 0;
    }
    if(bytes.length == 1){ //英文字符
      return bytes[0];
    }
    if(bytes.length == 2){ //中文字符
      int hightByte = 256 + bytes[0];
      int lowByte = 256 + bytes[1];

      int ascii = (256 * hightByte + lowByte) - 256 * 256;

      //System.out.println("ASCII=" + ascii);

      return ascii;
    }

    return 0; //错误
  }

  /**
   * 根据ASCII码到SpellMap中查找对应的拼音
   * @param ascii int
   * 字符对应的ASCII
   * @return String
   * 拼音,首先判断ASCII是否>0&<160,如果是返回对应的字符,
   * 
否则到SpellMap中查找,如果没有找到拼音,则返回null,如果找到则返回拼音.
   */
  public static String getSpellByAscii(int ascii)
  {
    if(ascii > 0 && ascii < 160){ //单字符
      return String.valueOf((char)ascii);
    }

    if(ascii < -20319 || ascii > -10247){ //不知道的字符
      return null;
    }

    Set keySet = spellMap.keySet();
    Iterator it = keySet.iterator();

    String spell0 = null;;
    String spell = null;

    int asciiRang0 = -20319;

最新评论共有 0 位网友发表了评论
发表评论
评论内容:不能超过250字,需审核,请自觉遵守互联网相关政策法规。
用户名: 密码:
匿名?
注册
Google Adsense
相关文章