專利名稱::一種字詞查找方法和裝置的制作方法
技術(shù)領(lǐng)域:
:本發(fā)明涉及計算機(jī)
技術(shù)領(lǐng)域:
,具體涉及一種字詞查找方法和裝置。
背景技術(shù):
:為了方便用戶進(jìn)行交互,例如電腦、手機(jī)、機(jī)頂盒、個人數(shù)字處理等多種電子設(shè)備上通常都安裝有輸入法軟件。現(xiàn)有的輸入法軟件在進(jìn)行初始化的過程中,通常會先將字庫文件和詞庫文件導(dǎo)入內(nèi)存中,然后根據(jù)字庫文件和詞庫文件生成搜索樹,生成的搜索樹包括大量樹形節(jié)點,搜索樹的每個節(jié)點通常都包括字庫文件中的一個字、該字的拼音、該字是否有詞組等多種信息?,F(xiàn)有的字詞查找方式中,在接收到用戶輸入的拼音后,利用搜索樹查找出接收到的拼音對應(yīng)的全部漢字,并分批顯示查找出漢字以供用戶選擇。在實現(xiàn)本發(fā)明的過程中,發(fā)明人發(fā)現(xiàn),現(xiàn)有的字詞查找方式是利用搜索樹進(jìn)行拼音和字的匹配查找的,因此必須先在內(nèi)存中生成搜索樹,而搜索樹所占用的內(nèi)存資源通常相對較多,現(xiàn)有的字詞查找方式不利于節(jié)約內(nèi)存資源。
發(fā)明內(nèi)容本發(fā)明實施例所要解決的技術(shù)問題是,提供一種字詞查找方法和裝置,能夠相對減少字詞查找對內(nèi)存資源的消耗,有利于節(jié)約內(nèi)存資源。為解決上述技術(shù)問題,本發(fā)明實施例提供以下技術(shù)方案一種字詞查找方法,包括將字庫文件導(dǎo)入內(nèi)存,并根據(jù)所述字庫文件生成拼音偏移表,所述字庫文件包括分別與各個拼音相匹配的字記錄,所述拼音偏移表包括用于記錄拼音的字段和用于記錄與該拼音相匹配的字記錄在字庫文件中的偏移量的字段;獲取第一拼音;從所述拼音偏移表中查找出與第一拼音相匹配的字記錄在所述字庫文件中的偏移量;利用所述查找出的偏移量,從所述字庫文件中讀取出與第一拼音相匹配的字記錄中一個或多個字以供選擇。優(yōu)選的,所述方法還包括將詞庫文件導(dǎo)入內(nèi)存,并根據(jù)所述詞庫文件生成字偏移表,所述詞庫文件包括分別與多個字相匹配的詞組記錄,所述字偏移表包括用于記錄字的字段和用于記錄與該字相匹配的詞組記錄在詞庫文件中的偏移量的字段。優(yōu)選的,所述利用所述詞庫文件生成字偏移表具體為利用所述詞庫文件生成采用哈西表存儲結(jié)構(gòu)的字偏移表。優(yōu)選的,所述方法還包括在獲得-陂選擇的字后,從字偏移表中查找出與所述獲得的字相匹配的詞組記錄在所述詞庫文件中的偏移量;利用所述查找出的詞組記錄的偏移量,從所述詞庫文件中讀取出與所述獲得的字相匹配的詞組記錄中一個或多個詞組以供選擇。優(yōu)選的,所述方法還包括獲取第二拼音;從所述拼音偏移表中查找出與第二拼音相匹配的字記錄在所述字庫文件中的偏移量,并利用所述查找出的偏移量,在所述字庫文件中查找到與第二拼音相匹配的字記錄;從字偏移表中查找出與第一4丼音相匹配的字述查找出的詞組記錄的偏移量,在詞庫中查找到與第一拼音相匹配的字記錄中的每個漢字相匹配的詞組記錄;將與第一拼音相匹配的字記錄中的每個漢字相匹配的詞組記錄中的詞組和與第二拼音相匹配的字記錄中的字進(jìn)4亍交叉匹配,根據(jù)交叉匹配的結(jié)果從詞庫文件讀取出與第一拼音相匹配的字記錄中的每個漢字相匹配的詞組記錄中一個或多個詞組以供選擇,所述讀取出一個或多個詞組的第二個字與第二拼音相匹配的字記錄中的其中一個字相同。一種字詞查找裝置,包括第一導(dǎo)入生成^t塊,用于將字庫文件導(dǎo)入內(nèi)存,并利用所述字庫文件生成拼音偏移表,所述字庫文件包括分別與各個拼音相匹配的字記錄,所述拼音偏移表包括用于記錄拼音的字段和用于記錄與該拼音相匹配的字記錄在字庫文件中的偏移量的字段;獲取模塊,用于獲取第一拼音;第一查找模塊,用于從所述拼音偏移表中查找出與第一拼音相匹配的字記錄在所述字庫文件中的偏移量;字讀取模塊,用于利用所述第一查找模塊查找出的偏移量,從所述字庫文件中讀取出與第一拼音相匹配的字記錄中一個或個字以供選擇。第二導(dǎo)入生成模塊,將詞庫文件導(dǎo)入內(nèi)存,并利用所述詞庫文件生成字偏移表,所述詞庫文件包括分別與多個字相匹配的詞組記錄,所述字偏移表包括用于記錄字的字段和用于記錄與該字相匹配的詞組記錄在詞庫文件中的偏移量的字段。優(yōu)選的,所述第二導(dǎo)入生成模塊包括第二導(dǎo)入子模塊,用于將詞庫文件導(dǎo)入內(nèi)存,所述詞庫文件包括分別與多個字相匹配的詞組記錄;第二生成子模塊,用于利用所述第二導(dǎo)入子模塊導(dǎo)入的詞庫文件生成采用哈西表存儲結(jié)構(gòu)的字偏移表,所述字偏移表包括用于記錄字的字段和用于記錄與該字相匹配的詞組記錄在詞庫文件中的偏移量的字段。優(yōu)選的,所述裝置還包括第二查找模塊,用于在獲得被選擇的字后,從字偏移表中查找出與所述獲得的字相匹配的詞組記錄在所述詞庫文件中的偏移量;詞讀取^^莫塊,用于利用所述第二查找模塊查找出的詞組記錄的偏移量,從所述詞庫文件中讀取出與所述獲得的字相匹配的詞組記錄中一個或多個詞組以供選擇。優(yōu)選的,所述獲取模塊還用于,獲取第二拼音;所述第一查找模塊還用于,從所述拼音偏移表中查找出與第二拼音相匹配的字記錄在所述字庫文件中的偏移量;所述裝置還包括:字查找模塊,用于利用所述第一查找模塊查找出的偏移量,在所述字庫文件中查找到與第二拼音相匹配的字記錄;所述第二查找模塊還用于,從字偏移表中查找出與第一拼音相匹配的字記錄中的每個漢字相匹配的詞組記錄的在所述詞庫文件中的偏移量;所述裝置還包括詞組查找模塊,用于利用所述第二查找it塊查找出的詞組記錄的偏移量,在詞庫中查找到與第一拼音相匹配的字記錄中的每個漢字相匹配的詞組記錄;所述詞讀取模塊還用于,將與第一拼音相匹配的字記錄中的每個漢字相匹配的詞組記錄中的詞組和與第二拼音相匹配的字記錄中的字進(jìn)行交叉匹配,根據(jù)交叉匹配的結(jié)果從詞庫文件讀取出與第一拼音相匹配的字i己錄中的每個漢字相匹配的詞組記錄中一個或多個詞組以供選擇,所述讀取出一個或多個詞組的第二個字與第二拼音相匹配的字記錄中的其中一個字相同。由上述技術(shù)方案可以看出,本發(fā)明實施例的技術(shù)方案具有如下優(yōu)點根據(jù)字庫文件在內(nèi)存中生成拼音偏移表,利用4并音偏移表從字庫文件中查找與拼音匹配的字,較現(xiàn)有的在內(nèi)存中生成的搜索樹相比,拼音偏移表結(jié)構(gòu)簡單體積小,能夠相對減少字詞查找對內(nèi)存資源的消耗,有利于節(jié)約內(nèi)存資源。為了更清楚地說明本發(fā)明實施例中的技術(shù)方案,下面將對實施例描述中所需要使用的附圖作簡單地介紹,顯而易見地,下面描述中的附圖僅僅是本發(fā)明的一些實施例,對于本領(lǐng)域普通技術(shù)人員來講,在不付出創(chuàng)造性勞動性的前提下,還可以根據(jù)這些附圖獲得其他的附圖。圖l是本發(fā)明實施例提供的一種字詞查找方法流程圖2是本發(fā)明實施例提供的另一種字詞查找方法流程圖3是本發(fā)明實施例提供的一種字詞查找裝置的結(jié)構(gòu)示意圖。具體實施例方式本發(fā)明實施例提供一種字詞查找方法和裝置,能夠相對減少字詞查找對內(nèi)存資源的消耗,有利于節(jié)約內(nèi)存資源。以下通過具體實施例分別進(jìn)行詳細(xì)說明。請參見圖l,本發(fā)明實施例一種字詞查找方法第一實施例可以包括110、將字庫文件導(dǎo)入內(nèi)存,并根據(jù)字庫文件生成拼音偏移表,上述字庫文件包括分別與各個拼音相匹配的字記錄,上述拼音偏移表包括用于記錄拼音的字段和用于記錄與該拼音相匹配的字記錄在字庫文件中的偏移量的字段。在一種應(yīng)用場景下,在初始化過程中,將字庫文件導(dǎo)入內(nèi)存,每個拼音在字庫文件中可以有一條相匹配的字記錄,字庫文件中的每條字記錄可以包括拼音以及可與該拼音相匹配的部分或全部字??梢愿鶕?jù)字庫文件在內(nèi)存中生成拼音偏移表,拼音偏移表主要用于記錄與每個拼音相匹配的字記錄在字庫文件中的偏移量,也就是每個4并音相匹配的字記錄在字庫文件中的起始位置,可以根據(jù)字記錄在字庫文件中的起始位置快速的在字庫文件中找到該字記錄。120、獲取第一拼音。在一種應(yīng)用場景下,可以獲取用戶通過輸入設(shè)備輸入的第一拼音,第一拼音可以是一個完整的拼音,也可以某個拼音的開頭部分。130、從上述拼音偏移表中查找出與第一拼音相匹配的字記錄在上述字庫文件中的偏移量。140、利用上述查找出的偏移量,從字庫文件中讀取出上述獲取的拼音對應(yīng)的字記錄中一個或多個字以供選擇。在一種應(yīng)用場景下,可以采用分批讀:f又的方式,A^字庫文件中讀取出第一拼音對應(yīng)的字記錄中一個或多個字以供選擇。由上述技術(shù)方案可以看出,本實施例中,根據(jù)字庫文件在內(nèi)存中生成拼音偏移表,利用拼音偏移表從字庫文件中查找與拼音匹配的字,較現(xiàn)有的在內(nèi)存中生成的搜索樹相比,拼音偏移表結(jié)構(gòu)簡單體積小,能夠相對減少字詞查找對內(nèi)存資源的消耗,有利于節(jié)約內(nèi)存資源。為便于理解本發(fā)明的技術(shù)方案,下面通過更為具體實施例,對本發(fā)明技術(shù)方案進(jìn)行進(jìn)一步詳細(xì)的說明。請參見圖2,本發(fā)明實施例一種字詞查找的方法另一實施例可以包括201、將字庫文件和詞庫文件導(dǎo)入內(nèi)存。在一種應(yīng)用場景下,在初始化過程中,將字庫文件和詞庫文件導(dǎo)入內(nèi)存,并可以根據(jù)字庫文件和詞庫文件在內(nèi)存中生成拼音偏移表和字偏移表。常用詞的精簡字庫和精簡詞庫,以盡量減少內(nèi)存資源的消耗。在一種應(yīng)用場景下,字庫文件可以如表l所示,^旦不局限于此表1<table>tableseeoriginaldocumentpage9</column></row><table>如表l所示,字庫文件中的記錄均可以稱之為字記錄,其中,字庫文件中的每條字記錄可以包括用于記錄拼音的拼音字段和用于記錄可與該拼音相匹配的部分或全部字的字段??梢钥闯?,每個拼音在表l所示字庫文件中對應(yīng)有一條匹配的字記錄,利用表l所示的字庫文件可以清楚的記錄每個拼音與可與該拼音相匹配的字之間的對應(yīng)關(guān)系,可以根據(jù)拼音從字庫文件中查找到該拼音相匹配的字記錄,進(jìn)而查找出可與該拼音相匹配的一個或多個字。在一種應(yīng)用場景下,詞庫文件可以如表2所示,但不局限于此表2<table>tableseeoriginaldocumentpage10</column></row><table>如表2所示,詞庫文件中的記錄均可以稱之為詞組記錄,其中,詞庫文件中的每條記錄可以包括用于記錄字的字段和用于記錄以該字為首的全部詞組的詞組字段。可以看出,每個字在表2所示的詞庫文件中都對應(yīng)有一條相匹配的詞組記錄,利用表2所示的詞庫文件可以清楚的記錄字與以該字為首的多個詞組之間的對應(yīng)關(guān)系,可以根據(jù)某個字從詞庫文件中查找到該字相匹配的詞組記錄,進(jìn)而可以查找到以該字為首的一個或多個詞組。在一種應(yīng)用場景下,根據(jù)字庫文件生成的拼音偏移表的數(shù)據(jù)結(jié)構(gòu)可以如表3所示,但不局限于此表3<table>tableseeoriginaldocumentpage10</column></row><table>如表3所示,拼音偏移表的每條記錄可以包括用于記錄拼音的拼音字段、用于記錄與該拼音相匹配的字記錄在字庫文件中的偏移量的偏移量字段。上述拼音偏移表還可以進(jìn)一步包括用于記錄與該拼音相匹配的字記錄的長度信息,以方便從字庫文件中讀取出該拼音對應(yīng)的全部字。可以看出,利用拼音偏移表可以清楚的記錄與每個拼音相匹配的字記錄在字庫文件中的起始位置(偏移量),根據(jù)拼音偏移表中記錄的偏移量,能夠快速的在字庫文件中找到與該拼音相匹配的字記錄,進(jìn)而可以快速的從字庫文件中讀取出可與該拼音相匹配的一個或多個字。在一種應(yīng)用場景下,根據(jù)詞庫文件生成的字偏移表的數(shù)據(jù)結(jié)構(gòu)可以如表4所示,但不局限于此表4字拼音偏移量子節(jié)點阿500有阿1500沒有如表4所示,字偏移表的每條記錄可以包括用于記錄字的字段、用于記錄與該字相匹配的詞組記錄在詞庫文件中的偏移量的偏移量字^:、用于記錄該字拼音的拼音字段,拼音字段主要用于記錄該字為多音字時的拼音。字偏移表還可以包括用于記錄該字是否有子節(jié)點的子節(jié)點字H若有子節(jié)點,表示其它字通過哈西(HASH)表也可以找到該字的記錄,若沒有子節(jié)點,表示其他字通過HASH表不能找到該字的記錄。在一種應(yīng)用場景下,字偏移表可以采用HASH表的存儲結(jié)構(gòu),查找搜索時采用HASH算法進(jìn)行查找搜索。202、獲取用戶輸入的4并音。在一種應(yīng)用場景下,可以獲取用戶通過輸入設(shè)備(例如,鍵盤)輸入的4丼音,獲取的用戶輸入的拼音可以是一個完整的拼音,也可以是某個拼音的開頭部分。舉例來說,可以獲取用戶通過鍵盤輸入的拼音"zhuo"。203、從拼音偏移表中查找出與上述獲取的拼音相匹配的字記錄在字庫文件中的偏移量。在一種應(yīng)用場景下,可以根據(jù)獲取的拼音在拼音偏移表中進(jìn)行查找,查找出與上述獲取的拼音相匹配的字記錄在字庫文件中的偏移量。舉例來說,若獲取到的用戶輸入的拼音為"zhuo",則可以根據(jù)拼音"zhuo"在拼音偏移表中進(jìn)行查找,進(jìn)而查找出與拼音"zhuo"相匹配的字記錄在字庫文件中的偏移量,例如查找出偏移量為5000。特別的,若獲取到的拼音只有聲母,則可以將拼音偏移表中所有包括該聲母的多個拼音作為匹配對象,可以在拼音偏移表中查找出與上述所有包括該聲母的拼音相匹配的字記錄在字庫文件中的偏移量,進(jìn)而可以將查找到的一系列拼音對象中最接近獲取到的拼音所對應(yīng)的漢字優(yōu)先輸出以供選擇。204、利用上述查找出的字記錄的偏移量,從字庫文件中讀耳又出與上述獲取的拼音相匹配的字記錄中的一個或多個字以供選擇。其中,字庫文件中的字記錄在字庫文件中的偏移量是字記錄在字庫文件中的起始位置,根據(jù)字庫文件的表頭指針地址和字記錄在字庫文件中的起始位置,就可以快速的在字庫文件中查找到該字記錄。舉例來說,若在拼音偏移表中查找出與拼音"zhuo"相匹配的字記錄在字庫文件中的偏移量5000、也就獲得了與拼音"zhuo"相匹配的字記錄在字庫文件中的起始位置。根據(jù)字庫文件的表頭指針地址和與"zhuo"相匹配的字記錄在字庫文件中的起始位置,就可以快速的在字庫文件中查找到該字記錄,進(jìn)而可以從字庫文件中讀取出該字記錄中的一個或多個字以供選擇。進(jìn)一步的,若該字記錄中的字較多,可以分批的從字庫文件中讀取出該字記錄中的字以供選擇。可以根據(jù)用戶的選擇,輸入被用戶選擇的字。205、獲得被選擇的字,并從字偏移表中查找出與上述獲得的字相匹配的詞組記錄在詞庫文件中的偏移量。在一種應(yīng)用場景下,當(dāng)根據(jù)用戶的選擇獲得被選擇的某個字后,可以進(jìn)一步進(jìn)行聯(lián)想,在字偏移表中進(jìn)行查找,查找出與上述獲得的被選擇的字相匹配的詞組記錄在詞庫文件中的偏移量。206、利用上述查找出的詞組記錄的偏移量,從詞庫文件中讀取出與上述獲得的字相匹配的詞組記錄中的一個或多個詞以供選4奪。其中,詞庫文件中的詞組記錄在詞庫文件中的偏移量是詞組記錄在詞庫文件中的起始位置,根據(jù)詞庫文件的表頭指針地址和詞組記錄在詞庫文件中的起始位置,就可以快速的在詞庫文件中查找到該詞組記錄。舉例來說,若獲得被用戶選擇的字為"茁,,,可以在漢字偏移表中查找與"茁,,相匹配的詞組記錄在詞庫文件中的偏移量、也就獲得了與"茁"相匹配的詞組記錄在詞庫文件中的起始位置。根據(jù)詞庫文件的表頭指針地址和與"茁"相匹配的詞組記錄在詞庫文件中的起始位置,就可以快速的在詞庫文件中查找到該詞組記錄,進(jìn)而可以從詞庫文件中讀耳又出該詞組記錄中的一個或多個詞以供選擇。進(jìn)一步的,若該詞組記錄中的詞組較多,可以分批的從詞庫文件中讀取出該詞組記錄中的詞組以供選擇。可以根據(jù)用戶的選擇,輸入被用戶選擇的詞組。在一種應(yīng)用場景下,若獲取到用戶連續(xù)輸入的兩個或兩個以上的拼音,可以先從字庫文件查找出與第一個拼音相匹配的字記錄中的全部字(下面用集合A表示)。從字偏移表中查找出與集合A中的每個漢字相匹配的詞組記錄的在所述詞庫文件中的偏移量,并利用查找出的詞組記錄的偏移量,在詞庫中查找到與第一個4并音相匹配的字記錄中的每個漢字相匹配的詞組記錄中的全部詞組(下面用集合B表示)。從拼音偏移表中查找出與第二個拼音相匹配的字記錄在字庫文件中的偏移量,并利用查找出的偏移量,在字庫文件中查找到與第二個拼音相匹配的字記錄中的全部漢字(下面用集合B表示),將集合B和集合C進(jìn)行交叉匹配,根據(jù)交叉匹配的結(jié)果,從詞庫文件讀取出與第一個拼音相匹配的字記錄中的每個漢字相匹配的詞組記錄(集合B)中的一個或多個詞組以供選擇,其中,上述讀取出一個或多個詞組的第二個字與第二個拼音相匹配的字記錄(集合C)中的一個或多字相同,以此類推。舉例來說,若獲取到用戶連續(xù)輸入的拼音為"zhuozhuang",其中,第一個拼音為"zhuo",第二個4并音為"zhuang"。若從字庫文件中查找到可與第一個拼音"zhuo"相匹配的字包括"著、著、桌、捉、卓、琢、繳、灼、酌、拙、濁、濯、茁、詠、斫、鐲、涿"等。若從詞庫文件中查找到與上述"著,,字相匹配的詞組包括"著(重、力、手、眼于、眼、想、實、目艮點、陸、色、裝、落、意、墨、筆)"等。從字庫文件中查找到可與第二個拼音"zhuang"相匹配的字包括"裝、狀、壯、莊、撞、妝、幢、樁、獎、僮、戇"等。將與"著"字相匹配的詞組和可與第二個拼音"zhuang,,相匹配的字交叉匹配查找,通過交叉匹配查找可以得出,與拼音"zhuang"相匹配的字"裝"和與"著,,字相匹配的詞組"著裝,,的第二個字相同,進(jìn)而可以從詞庫中讀取由上述技術(shù)方案可以看出,本實施例中,根據(jù)字庫文件和詞庫文件在內(nèi)存中生成拼音偏移表和字偏移表,利用拼音偏移表和字偏移表從字庫文件和詞庫文件中查找字詞,較現(xiàn)有的在內(nèi)存中生成的搜索樹相比,拼音偏移表和字偏移表結(jié)構(gòu)簡單體積小,能夠相對減少字詞查找對內(nèi)存資源的消耗,有利于節(jié)約內(nèi)存資源。為更好的實施本發(fā)明的技術(shù)方案,相應(yīng)的,本發(fā)明實施例中還提供一種字詞查找裝置。請參見圖3,本發(fā)明實施例的一種字詞查找裝置可以包括第一導(dǎo)入生成模塊310、獲取模塊320、第一查找模塊330和字讀取模塊340。其中,第一導(dǎo)入生成模塊310,用于將字庫文件導(dǎo)入內(nèi)存,并利用字庫文件生成拼音偏移表,上述字庫文件包括分別與各個拼音相匹配的字記錄,上述拼音偏移表包括用于記錄拼音的字段和用于記錄與該拼音相匹配的字記錄在字庫文件中的偏移量的字段。獲取模塊320,用于獲取第一拼音。第一查找模塊330,用于從上述拼音偏移表中查找出與第一拼音相匹配的字記錄在上述字庫文件中的偏移量。字讀取模塊340,用于利用第一查找模塊330查找出的偏移量,從上述字庫文件中讀取出與第一拼音相匹配的字記錄中一個或多個字以供選擇。在一種應(yīng)用場景下,上述字詞查找裝置還可以包括第二導(dǎo)入生成模塊(圖3中未示出)。第二導(dǎo)入生成模塊,將詞庫文件導(dǎo)入內(nèi)存,并根據(jù)上述詞庫文件生成字偏移表,上述詞庫文件包括分別與多個字相匹配的詞組記錄,上述字偏移表包括用于記錄字的字段和用于記錄與該字相匹配的詞組記錄在詞庫文件中的偏移量的字段。在一種應(yīng)用場景下,第二導(dǎo)入生成模塊可以包括第二導(dǎo)入子模塊和第二生成子模塊(圖3中未示出)。第二導(dǎo)入子模塊,用于將詞庫文件導(dǎo)入內(nèi)存,上述詞庫文件包括分別與多個字相匹配的詞組記錄。第二生成子模塊,用于根據(jù)第二導(dǎo)入子模塊導(dǎo)入的詞庫文件生成采用哈西表存儲結(jié)構(gòu)的字偏移表,上述字偏移表包括用于記錄字的字段和用于記錄與該字相匹配的詞組記錄在詞庫文件中的偏移量的字段。在一種應(yīng)用場景下,上述字詞查找裝置還可以包括第二查找模塊和詞讀取模塊(圖3中未示出)第二查找模塊,用于在獲得被選擇的字后,從字偏移表中查找出與上述獲得的字相匹配的詞組記錄在所述詞庫文件中的偏移量。詞讀取模塊,用于利用第二查找模塊查找出的詞組記錄的偏移量,從上述選擇。在一種應(yīng)用場景下,獲取模塊320還可以用于,獲取第二拼音。第一查找模塊330還用于,從上述拼音偏移表中查找出與第二拼音相匹配的字記錄在上述字庫文件中的偏移量。上述字詞查找裝置還可以包括字查找模塊,用于利用第一查找模塊330查找出的偏移量,在上述字庫文件中查找到與第二拼音相匹配的字記錄第二查找模塊還可以用于,從字偏移表中查找出與第一拼音相匹配的字記上述字詞查找裝置還可以包括詞組查找模塊,用于利用第二查找模塊查找出的詞組記錄的偏移量,在詞庫中查找到與第一4并音相匹配的字記錄中的每個漢字相匹配的詞組記錄。詞讀取模塊還可以用于,將與第一拼音相匹配的字記錄中的每個漢字相匹配的詞組記錄中的詞組和與第二拼音相匹配的字記錄中的字進(jìn)行交叉匹配,,根據(jù)交叉匹配的結(jié)果從詞庫文件讀取出與第一拼音相匹配的字記錄中的每個漢字相匹配的詞組記錄中一個或多個詞組以供選擇,上述讀取出一個或多個詞組的第二個字與第二拼音相匹配的字記錄中的其中一個字相同??梢岳斫獾氖牵緦嵤├淖衷~查找裝置的各個功能模塊的功能可以根據(jù)實施例二中的方法具體實現(xiàn),其具體實現(xiàn)過程可參考實施例二中的相關(guān)描述,此處不再贅述。需要說明的是,對于前述的各方法實施例,為了簡單描述,故將其都表述為一系列的動作組合,但是本領(lǐng)域技術(shù)人員應(yīng)該知悉,本發(fā)明并不受所描述的動作順序的限制,因為依據(jù)本發(fā)明,某些步驟可以采用其他順序或者同時進(jìn)行。其次,本領(lǐng)域技術(shù)人員也應(yīng)該知悉,說明書中所描述的實施例均屬于優(yōu)選實施例,所涉及的動作和模塊并不一定是本發(fā)明所必須的。在上述實施例中,對各個實施例的描述都各有側(cè)重,某個實施例中沒有詳述的部分,可以參見其他實施例的相關(guān)描述。綜上所述,本發(fā)明實施例的技術(shù)方案中,根據(jù)字庫文件和詞庫文件在內(nèi)存中生成拼音偏移表和字偏移表,利用拼音偏移表和字偏移表從字庫文件和詞庫文件中查找字詞,較現(xiàn)有的在內(nèi)存中生成的搜索樹相比,拼音偏移表和字偏移表結(jié)構(gòu)簡單體積小,能夠相對減少字詞查找對內(nèi)存資源的消耗,有利于節(jié)約內(nèi)存資源。驟是可以通過程序來指令相關(guān)的硬件來完成,該程序可以存儲于一計算機(jī)可讀存儲介質(zhì)中,存儲介質(zhì)可以包括只讀存儲器、隨機(jī)存儲器、磁盤或光盤等。以上對本發(fā)明實施例所提供的一種字詞查找方法和裝置進(jìn)行了詳細(xì)介紹,本文中應(yīng)用了具體個例對本發(fā)明的原理及實施方式進(jìn)行了闡述,以上實施例的說明只是用于幫助理解本發(fā)明的方法及其核心思想;同時,對于本領(lǐng)域的一般技術(shù)人員,依據(jù)本發(fā)明的思想,在具體實施方式及應(yīng)用范圍上均會有改變之處,綜上所述,本說明書內(nèi)容不應(yīng)理解為對本發(fā)明的限制。權(quán)利要求1、一種字詞查找方法,其特征在于,包括將字庫文件導(dǎo)入內(nèi)存,并根據(jù)所述字庫文件生成拼音偏移表,所述字庫文件包括分別與各個拼音相匹配的字記錄,所述拼音偏移表包括用于記錄拼音的字段和用于記錄與該拼音相匹配的字記錄在字庫文件中的偏移量的字段;獲取第一拼音;從所述拼音偏移表中查找出與第一拼音相匹配的字記錄在所述字庫文件中的偏移量;利用所述查找出的偏移量,從所述字庫文件中讀取出與第一拼音相匹配的字記錄中一個或多個字以供選擇。2、根據(jù)權(quán)利要求1所述的方法,其特征在于,所述方法還包括將詞庫文件導(dǎo)入內(nèi)存,并根據(jù)所述詞庫文件生成字偏移表,所述詞庫文件包括分別與多個字相匹配的詞組記錄,所述字偏移表包括用于記錄字的字段和用于記錄與該字相匹配的詞組記錄在詞庫文件中的偏移量的字段。3、根據(jù)權(quán)利要求2所述的方法,其特征在于,所述利用所述詞庫文件生成字偏移表具體為利用所述詞庫文件生成采用哈西表存儲結(jié)構(gòu)的字偏移表。4、根據(jù)權(quán)利要求2或3所述的方法,其特征在于,所述方法還包括在獲得被選擇的字后,從字偏移表中查找出與所述獲得的字相匹配的詞組記錄在所述詞庫文件中的偏移量;利用所述查找出的詞組記錄的偏移量,從所述詞庫文件中讀取出與所述獲得的字相匹配的詞組記錄中一個或多個詞組以供選擇。5、根據(jù)權(quán)利要求2或3所述的方法,其特征在于,所述方法還包括獲取第二拼音;從所述拼音偏移表中查找出與第二拼音相匹配的字記錄在所述字庫文件中的偏移量,并利用所述查找出的偏移量,在所述字庫文件中查找到與第二拼音相匹配的字記錄;從字偏移表中查找出與第一拼音相匹配的字記錄中的每個漢字相匹配的詞組記錄的在所述詞庫文件中的偏移量,并利用所述查找出的詞組記錄的偏移量,在詞庫中查找到與第一拼音相匹配的字記錄中的每個漢字相匹配的詞組記錄;將與第一拼音相匹配的字記錄中的每個漢字相匹配的詞組記錄中的詞組和與第二拼音相匹配的字記錄中的字進(jìn)行交叉匹配,根據(jù)交叉匹配的結(jié)果從詞庫文件讀取出與第一4丼音相匹配的字記錄中的每個漢字相匹配的詞組記錄中一個或多個詞組以供選擇,所述讀取出一個或多個詞組的第二個字與第二拼音相匹配的字記錄中的其中一個字相同。6、一種字詞查找裝置,其特征在于,包括第一導(dǎo)入生成;f莫塊,用于將字庫文件導(dǎo)入內(nèi)存,并利用所述字庫文件生成拼音偏移表,所述字庫文件包括分別與各個拼音相匹配的字記錄,所述拼音偏移表包括用于記錄拼音的字段和用于記錄與該拼音相匹配的字記錄在字庫文件中的偏移量的字段;獲取模塊,用于獲取第一拼音;第一查找模塊,用于從所述拼音偏移表中查找出與第一拼音相匹配的字記錄在所述字庫文件中的偏移量;字讀取模塊,用于利用所述第一查找模塊查找出的偏移量,從所述字庫文件中讀取出與第一拼音相匹配的字記錄中一個或多個字以供選擇。7、根據(jù)權(quán)利要求6所述的裝置,其特征在于,所述裝置還包括第二導(dǎo)入生成^f莫塊,將詞庫文件導(dǎo)入內(nèi)存,并利用所述詞庫文件生成字偏移表,所述詞庫文件包括分別與多個字相匹配的詞組記錄,所述字偏移表包括用于記錄字的字段和用于記錄與該字相匹配的詞組記錄在詞庫文件中的偏移量的字段。8、根據(jù)權(quán)利要求7所述的裝置,其特征在于,所述第二導(dǎo)入生成模塊包括第二導(dǎo)入子模塊,用于將詞庫文件導(dǎo)入內(nèi)存,所述詞庫文件包括分別與多個字相匹配的詞組i己錄;第二生成子模塊,用于利用所述第二導(dǎo)入子模塊導(dǎo)入的詞庫文件生成采用哈西表存儲結(jié)構(gòu)的字偏移表,所述字偏移表包括用于記錄字的字段和用于記錄與該字相匹配的詞組記錄在詞庫文件中的偏移量的字段。9、根據(jù)權(quán)利要求7或8所述的裝置,其特征在于,所述裝置還包括第二查找模塊,用于在獲得被選擇的字后,從字偏移表中查找出與所述獲得的字相匹配的詞組記錄在所述詞庫文件中的偏移量;詞讀取模塊,用于利用所述第二查找模塊查找出的詞組記錄的偏移量,從所述詞庫文件中讀取出與所述獲得的字相匹配的詞組記錄中一個或多個詞組以供選擇。10、根據(jù)權(quán)利要求7或8所述的裝置,其特征在于,所述獲取模塊還用于,獲取第二拼音;所述第一查找模塊還用于,從所述拼音偏移表中查找出與第二拼音相匹配的字記錄在所述字庫文件中的偏移量;所述裝置還包括字查找模塊,用于利用所述第一查找模塊查找出的偏移量,在所述字庫文件中查找到與第二拼音相匹配的字記錄;所述第二查找模塊還用于,從字偏移表中查找出與第一拼音相匹配的字記所述裝置還包括詞組查找模塊,用于利用所述第二查找模塊查找出的詞組記錄的偏移量,在詞庫中查找到與第一拼音相匹配的字記錄中的每個漢字相匹配的詞組記錄;所述詞讀取模塊還用于,將與第一拼音相匹配的字記錄中的每個漢字相匹配的詞組記錄中的詞組和與第二拼音相匹配的字記錄中的字進(jìn)行交叉匹配,根據(jù)交叉匹配的結(jié)果從詞庫文件讀取出與第一拼音相匹配的字記錄中的每個漢字相匹配的詞組記錄中一個或多個詞組以供選擇,所述讀取出一個或多個詞組的第二個字與第二拼音相匹配的字記錄中的其中一個字相同。全文摘要本發(fā)明實施例公開了一種字詞查找方法和裝置。字詞查找方法包括將字庫文件導(dǎo)入內(nèi)存,并根據(jù)字庫文件生成拼音偏移表,字庫文件包括分別與各個拼音相匹配的字記錄,拼音偏移表包括用于記錄拼音的字段和用于記錄與該拼音相匹配的字記錄在字庫文件中的偏移量的字段;獲取第一拼音;從拼音偏移表中查找出與第一拼音相匹配的字記錄在字庫文件中的偏移量;利用查找出的偏移量,從字庫文件中讀取出與第一拼音相匹配的字記錄中一個或多個字以供選擇。本發(fā)明實施例的技術(shù)方案能夠相對減少字詞查找對內(nèi)存資源的消耗,有利于節(jié)約內(nèi)存資源。文檔編號G06F17/30GK101599085SQ20091014834公開日2009年12月9日申請日期2009年6月15日優(yōu)先權(quán)日2009年6月15日發(fā)明者徐佳宏,麻林茂,黃生玲申請人:深圳市茁壯網(wǎng)絡(luò)股份有限公司