<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    posts - 55,comments - 89,trackbacks - 0
    參考:http://www.360doc.com/content/081106/15/61497_1888633.html

    最近正做一個根據(jù)漢字拼音縮寫的查詢,從網(wǎng)上搜了搜,覺得這種實現(xiàn)是最好的,但不知道原理是啥。
    public class ChnToPinYin{
    /**
         * 漢字轉拼音縮寫
         * @param str  //要轉換的漢字字符串
         * @return String  //拼音縮寫
         */
        public static String getPYString(String str)
        {
                String tempStr = "";
                for(int i=0; i<str.length(); i++) {
                        char c = str.charAt(i);
                        if((int)c >= 33 && (int)c <=126) {//字母和符號原樣保留
                                tempStr += String.valueOf(c);
                        }
                        else {//累加拼音聲母
                                tempStr += getPYChar( String.valueOf(c) );
                        }
                }
                return tempStr;
        }
        /**
         * 取單個字符的拼音聲母
         * @param c  //要轉換的單個漢字
         * @return String 拼音聲母
         */
        public static String getPYChar(String c)
        {
                byte[] array = new byte[2];
                array = String.valueOf(c).getBytes();
                int i = (short)(array[0] - '\0' + 256) * 256 + ((short)(array[1] - '\0' + 256));
                if ( i < 0xB0A1) return "*";
                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 "*";
        }
        
        public static void main(String []g){
         System.out.println(getPYString("中國,,;$#@&avc"));
        }

    }
    posted on 2009-06-08 14:28 jiafang83 閱讀(2192) 評論(3)  編輯  收藏

    FeedBack:
    # re: JAVA版漢字轉拼音縮寫程序
    2009-07-18 14:49 | 小葉子
    沒有發(fā)現(xiàn)這段程序有問題嗎?你輸個“深圳”,試試,看能不能輸出“sz”,若不能,我想問你這個問題該如何解決?  回復  更多評論
      
    # re: JAVA版漢字轉拼音縮寫程序
    2013-12-25 18:26 | dsa
    有問題啊,是錯的!  回復  更多評論
      
    # re: JAVA版漢字轉拼音縮寫程序
    2015-04-14 19:06 | niko
    java必須是GBK編碼才行  回復  更多評論
      

    只有注冊用戶登錄后才能發(fā)表評論。


    網(wǎng)站導航:
     
    主站蜘蛛池模板: 一级做a爰片久久毛片免费看 | 亚洲欧洲日产专区| 青春禁区视频在线观看直播免费| 亚洲国产欧洲综合997久久| 亚洲精品国产综合久久一线| 无码少妇精品一区二区免费动态 | 亚洲深深色噜噜狠狠爱网站| 在线视频免费观看爽爽爽| 激情婷婷成人亚洲综合| 亚洲AV无码一区二区乱子伦 | 亚洲小说区图片区| xvideos亚洲永久网址| 91在线手机精品免费观看| 视频一区二区三区免费观看| 亚洲国产天堂在线观看| 亚洲成av人在片观看| 曰曰鲁夜夜免费播放视频| 成人免费一区二区三区| 亚洲日韩久久综合中文字幕| 国产亚洲一区二区三区在线观看 | 中文字幕亚洲综合久久| 无码国产亚洲日韩国精品视频一区二区三区| 野花香高清视频在线观看免费| 久久亚洲AV成人无码国产电影 | 亚洲欧洲在线观看| 国产啪亚洲国产精品无码| 最近中文字幕无免费视频| 日韩午夜理论免费TV影院 | 久久电影网午夜鲁丝片免费| 和老外3p爽粗大免费视频| 亚洲av日韩专区在线观看| 亚洲精品在线视频观看| 亚洲色成人中文字幕网站| 日韩电影免费在线| 免费精品国产自产拍在| 久久久精品免费视频| 九九全国免费视频| 午夜亚洲国产精品福利| 亚洲熟女综合色一区二区三区 | 亚洲首页国产精品丝袜| 久久亚洲精品成人综合|