where the amazing happens

          類(lèi)似qq的漢字拼音首字查詢(xún)

          項(xiàng)目里要用到這個(gè)功能,自己邊琢磨邊找資料,弄出一個(gè)demo,大概思路是這樣:用Properties的load()來(lái)加載一個(gè)固定格式的文本文件注1,然后直接當(dāng)Hashtable用。
          package org.navyblue.tests;

          import java.util.
          *;

          /**
           *
           * 類(lèi)似qq的漢字拼音首字查詢(xún)方法
           * by zqc 2005-08-04
           *
           **
          */

          public class pyTest
          {
              
          public pyTest(){}
              
              
          public static void main(String[] args)throws Exception{
                  Properties pyMap 
          = new Properties();
                  
          //拼音隱射表
                  pyMap.load(new java.io.FileInputStream("pyutf.txt"));
                  
          //測(cè)試字符
                  String[] testStr = {"我們","阿哈","嘎嘎","干什么","鄭晴川","誰(shuí)"};
                  
          //模擬輸入
                  String input = "g";
                  
                  System.
          out.println ("輸入查詢(xún)字符:g");
                  Vector inis 
          = new Vector();
                  Vector results 
          = new Vector();
                  Vector results2 
          = new Vector();
                  
                  
          //返回所有測(cè)試字符串的首字的打頭拼音
                  forint i =0 ; i < testStr.length ; i++ ){
                      String ini 
          =new String( new char[] { testStr[i].charAt(0)} );
                      String k 
          = (String)pyMap.get(ini);
                      results.add(k);
                      results2.add(testStr[i]);
                  }

                  
                  
          //輸出結(jié)果
                  int l = results.size();
                  
          for(int i = 0 ; i < l ; i++){
                      String c 
          = (String)results.get(i);
                      
          if(c.equals(input)){
                          System.
          out.println (results2.get(i));
                      }

                  }

              }

          }


          ----
          注1:這個(gè)映射文件系網(wǎng)上找來(lái)的,大約有14K的漢字量,一般也夠用了~用文本工具對(duì)原先的格式做了些修改使它符合Properties的格式,然后再用native2ascii轉(zhuǎn)成utf-8編碼。



          2005年8月8日 0:48:54

          posted on 2005-08-08 00:59 where the amazing happens 閱讀(1072) 評(píng)論(4)  編輯  收藏 所屬分類(lèi): 一般應(yīng)用

          評(píng)論

          # re: 類(lèi)似qq的漢字拼音首字查詢(xún) 2005-08-08 08:27 zeno

          速度怎么樣? 可以介紹一下么  回復(fù)  更多評(píng)論   

          # re: 類(lèi)似qq的漢字拼音首字查詢(xún) 2005-08-08 12:02 鳥(niǎo)不生蛋蛋的地方

          Hashtable讀出來(lái)后就一直常駐在內(nèi)存里,等訪問(wèn)的時(shí)候調(diào)用,所以速度應(yīng)該不慢.  回復(fù)  更多評(píng)論   

          # re: 類(lèi)似qq的漢字拼音首字查詢(xún) 2006-04-23 04:28 鳥(niǎo)不生蛋蛋的地方

          哦,后來(lái)才知道,可以根據(jù)unicode編碼地址來(lái)找,更準(zhǔn)確更全面.  回復(fù)  更多評(píng)論   

          # 2010.1月.28日 2010-01-29 10:38 賀森

          既然,我們遇見(jiàn)了.就好好珍惜彼此吧,請(qǐng)你相信我,對(duì)你所做的一切 很用心,很用心.希望你我都不是對(duì)方人生中的過(guò)客.多希望創(chuàng)造一個(gè)美好的結(jié)局  回復(fù)  更多評(píng)論   

          公告

          點(diǎn)擊這里給我發(fā)消息

          導(dǎo)航

          <2010年1月>
          272829303112
          3456789
          10111213141516
          17181920212223
          24252627282930
          31123456

          統(tǒng)計(jì)

          常用鏈接

          留言簿(3)

          隨筆分類(lèi)(18)

          隨筆檔案(17)

          文章分類(lèi)

          相冊(cè)

          其他我的blog

          技術(shù)Blog

          最新隨筆

          搜索

          最新評(píng)論

          閱讀排行榜

          評(píng)論排行榜

          主站蜘蛛池模板: 盐城市| 大悟县| 台东市| 阳东县| 永善县| 枝江市| 乌审旗| 寻乌县| 邵阳县| 防城港市| 宁国市| 嘉鱼县| 昌乐县| 年辖:市辖区| 夏津县| 渭南市| 江油市| 芜湖市| 三河市| 新平| 绥阳县| 沾化县| 平山县| 田林县| 靖江市| 辛集市| 巴南区| 高阳县| 万载县| 从江县| 集安市| 招远市| 申扎县| 新乡县| 六盘水市| 定西市| 宝鸡市| 林芝县| 周至县| 城固县| 金堂县|