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

JAVA实现把汉字转化成拼音

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

    int asciiRang;
    while(it.hasNext()){

      spell = (String)it.next();
      Object valObj = spellMap.get(spell);
      if(valObj instanceof Integer){
        asciiRang = ((Integer)valObj).intValue();

        if(ascii >= asciiRang0 && ascii < asciiRang){ //区间找到
          return(spell0 == null) ? spell : spell0;
        }
        else{
          spell0 = spell;
          asciiRang0 = asciiRang;
        }
      }
    }

    return null;

  }

  /**
   * 返回字符串的全拼,是汉字转化为全拼,其它字符不进行转换
   * @param cnStr String
   * 字符串
   * @return String
   * 转换成全拼后的字符串
   */
  public static String getFullSpell(String cnStr)
  {
    if(null == cnStr || "".equals(cnStr.trim())){
      return cnStr;
    }

    char[] chars = cnStr.toCharArray();
    StringBuffer retuBuf = new StringBuffer();
    for(int i = 0,Len = chars.length;i < Len;i++){
      int ascii = getCnAscii(chars[i]);
      if(ascii == 0){ //取ascii时出错
        retuBuf.append(chars[i]);
      }
      else{
        String spell = getSpellByAscii(ascii);
        if(spell == null){
          retuBuf.append(chars[i]);
        }
        else{
          retuBuf.append(spell);
        } // end of if spell == null
      } // end of if ascii <= -20400
    } // end of for

    return retuBuf.toString();
  }

  public static String getFirstSpell(String cnStr)
  {
    return null;
  }

  public static void main(String[] args)
  {
    String str = null;
    str = "谢海101普降喜雨";
    System.out.println("Spell=" + CnToSpell.getFullSpell(str));
    
    str = "张牙舞爪》。,";
    System.out.println("Spell=" + CnToSpell.getFullSpell(str));

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