一种字词查找方法和装置的制作方法

文档序号:6578788阅读:157来源:国知局

专利名称::一种字词查找方法和装置的制作方法
技术领域
:本发明涉及计算机
技术领域
,具体涉及一种字词查找方法和装置。
背景技术
:为了方便用户进行交互,例如电脑、手机、机顶盒、个人数字处理等多种电子设备上通常都安装有输入法软件。现有的输入法软件在进行初始化的过程中,通常会先将字库文件和词库文件导入内存中,然后根据字库文件和词库文件生成搜索树,生成的搜索树包括大量树形节点,搜索树的每个节点通常都包括字库文件中的一个字、该字的拼音、该字是否有词组等多种信息。现有的字词查找方式中,在接收到用户输入的拼音后,利用搜索树查找出接收到的拼音对应的全部汉字,并分批显示查找出汉字以供用户选择。在实现本发明的过程中,发明人发现,现有的字词查找方式是利用搜索树进行拼音和字的匹配查找的,因此必须先在内存中生成搜索树,而搜索树所占用的内存资源通常相对较多,现有的字词查找方式不利于节约内存资源。
发明内容本发明实施例所要解决的技术问题是,提供一种字词查找方法和装置,能够相对减少字词查找对内存资源的消耗,有利于节约内存资源。为解决上述技术问题,本发明实施例提供以下技术方案一种字词查找方法,包括将字库文件导入内存,并根据所述字库文件生成拼音偏移表,所述字库文件包括分别与各个拼音相匹配的字记录,所述拼音偏移表包括用于记录拼音的字段和用于记录与该拼音相匹配的字记录在字库文件中的偏移量的字段;获取第一拼音;从所述拼音偏移表中查找出与第一拼音相匹配的字记录在所述字库文件中的偏移量;利用所述查找出的偏移量,从所述字库文件中读取出与第一拼音相匹配的字记录中一个或多个字以供选择。优选的,所述方法还包括将词库文件导入内存,并根据所述词库文件生成字偏移表,所述词库文件包括分别与多个字相匹配的词组记录,所述字偏移表包括用于记录字的字段和用于记录与该字相匹配的词组记录在词库文件中的偏移量的字段。优选的,所述利用所述词库文件生成字偏移表具体为利用所述词库文件生成采用哈西表存储结构的字偏移表。优选的,所述方法还包括在获得-陂选择的字后,从字偏移表中查找出与所述获得的字相匹配的词组记录在所述词库文件中的偏移量;利用所述查找出的词组记录的偏移量,从所述词库文件中读取出与所述获得的字相匹配的词组记录中一个或多个词组以供选择。优选的,所述方法还包括获取第二拼音;从所述拼音偏移表中查找出与第二拼音相匹配的字记录在所述字库文件中的偏移量,并利用所述查找出的偏移量,在所述字库文件中查找到与第二拼音相匹配的字记录;从字偏移表中查找出与第一4丼音相匹配的字述查找出的词组记录的偏移量,在词库中查找到与第一拼音相匹配的字记录中的每个汉字相匹配的词组记录;将与第一拼音相匹配的字记录中的每个汉字相匹配的词组记录中的词组和与第二拼音相匹配的字记录中的字进4亍交叉匹配,根据交叉匹配的结果从词库文件读取出与第一拼音相匹配的字记录中的每个汉字相匹配的词组记录中一个或多个词组以供选择,所述读取出一个或多个词组的第二个字与第二拼音相匹配的字记录中的其中一个字相同。一种字词查找装置,包括第一导入生成^t块,用于将字库文件导入内存,并利用所述字库文件生成拼音偏移表,所述字库文件包括分别与各个拼音相匹配的字记录,所述拼音偏移表包括用于记录拼音的字段和用于记录与该拼音相匹配的字记录在字库文件中的偏移量的字段;获取模块,用于获取第一拼音;第一查找模块,用于从所述拼音偏移表中查找出与第一拼音相匹配的字记录在所述字库文件中的偏移量;字读取模块,用于利用所述第一查找模块查找出的偏移量,从所述字库文件中读取出与第一拼音相匹配的字记录中一个或个字以供选择。第二导入生成模块,将词库文件导入内存,并利用所述词库文件生成字偏移表,所述词库文件包括分别与多个字相匹配的词组记录,所述字偏移表包括用于记录字的字段和用于记录与该字相匹配的词组记录在词库文件中的偏移量的字段。优选的,所述第二导入生成模块包括第二导入子模块,用于将词库文件导入内存,所述词库文件包括分别与多个字相匹配的词组记录;第二生成子模块,用于利用所述第二导入子模块导入的词库文件生成采用哈西表存储结构的字偏移表,所述字偏移表包括用于记录字的字段和用于记录与该字相匹配的词组记录在词库文件中的偏移量的字段。优选的,所述装置还包括第二查找模块,用于在获得被选择的字后,从字偏移表中查找出与所述获得的字相匹配的词组记录在所述词库文件中的偏移量;词读取^^莫块,用于利用所述第二查找模块查找出的词组记录的偏移量,从所述词库文件中读取出与所述获得的字相匹配的词组记录中一个或多个词组以供选择。优选的,所述获取模块还用于,获取第二拼音;所述第一查找模块还用于,从所述拼音偏移表中查找出与第二拼音相匹配的字记录在所述字库文件中的偏移量;所述装置还包括:字查找模块,用于利用所述第一查找模块查找出的偏移量,在所述字库文件中查找到与第二拼音相匹配的字记录;所述第二查找模块还用于,从字偏移表中查找出与第一拼音相匹配的字记录中的每个汉字相匹配的词组记录的在所述词库文件中的偏移量;所述装置还包括词组查找模块,用于利用所述第二查找it块查找出的词组记录的偏移量,在词库中查找到与第一拼音相匹配的字记录中的每个汉字相匹配的词组记录;所述词读取模块还用于,将与第一拼音相匹配的字记录中的每个汉字相匹配的词组记录中的词组和与第二拼音相匹配的字记录中的字进行交叉匹配,根据交叉匹配的结果从词库文件读取出与第一拼音相匹配的字i己录中的每个汉字相匹配的词组记录中一个或多个词组以供选择,所述读取出一个或多个词组的第二个字与第二拼音相匹配的字记录中的其中一个字相同。由上述技术方案可以看出,本发明实施例的技术方案具有如下优点根据字库文件在内存中生成拼音偏移表,利用4并音偏移表从字库文件中查找与拼音匹配的字,较现有的在内存中生成的搜索树相比,拼音偏移表结构简单体积小,能够相对减少字词查找对内存资源的消耗,有利于节约内存资源。为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。图l是本发明实施例提供的一种字词查找方法流程图2是本发明实施例提供的另一种字词查找方法流程图3是本发明实施例提供的一种字词查找装置的结构示意图。具体实施例方式本发明实施例提供一种字词查找方法和装置,能够相对减少字词查找对内存资源的消耗,有利于节约内存资源。以下通过具体实施例分别进行详细说明。请参见图l,本发明实施例一种字词查找方法第一实施例可以包括110、将字库文件导入内存,并根据字库文件生成拼音偏移表,上述字库文件包括分别与各个拼音相匹配的字记录,上述拼音偏移表包括用于记录拼音的字段和用于记录与该拼音相匹配的字记录在字库文件中的偏移量的字段。在一种应用场景下,在初始化过程中,将字库文件导入内存,每个拼音在字库文件中可以有一条相匹配的字记录,字库文件中的每条字记录可以包括拼音以及可与该拼音相匹配的部分或全部字。可以根据字库文件在内存中生成拼音偏移表,拼音偏移表主要用于记录与每个拼音相匹配的字记录在字库文件中的偏移量,也就是每个4并音相匹配的字记录在字库文件中的起始位置,可以根据字记录在字库文件中的起始位置快速的在字库文件中找到该字记录。120、获取第一拼音。在一种应用场景下,可以获取用户通过输入设备输入的第一拼音,第一拼音可以是一个完整的拼音,也可以某个拼音的开头部分。130、从上述拼音偏移表中查找出与第一拼音相匹配的字记录在上述字库文件中的偏移量。140、利用上述查找出的偏移量,从字库文件中读取出上述获取的拼音对应的字记录中一个或多个字以供选择。在一种应用场景下,可以采用分批读:f又的方式,A^字库文件中读取出第一拼音对应的字记录中一个或多个字以供选择。由上述技术方案可以看出,本实施例中,根据字库文件在内存中生成拼音偏移表,利用拼音偏移表从字库文件中查找与拼音匹配的字,较现有的在内存中生成的搜索树相比,拼音偏移表结构简单体积小,能够相对减少字词查找对内存资源的消耗,有利于节约内存资源。为便于理解本发明的技术方案,下面通过更为具体实施例,对本发明技术方案进行进一步详细的说明。请参见图2,本发明实施例一种字词查找的方法另一实施例可以包括201、将字库文件和词库文件导入内存。在一种应用场景下,在初始化过程中,将字库文件和词库文件导入内存,并可以根据字库文件和词库文件在内存中生成拼音偏移表和字偏移表。常用词的精简字库和精简词库,以尽量减少内存资源的消耗。在一种应用场景下,字库文件可以如表l所示,^旦不局限于此表1<table>tableseeoriginaldocumentpage9</column></row><table>如表l所示,字库文件中的记录均可以称之为字记录,其中,字库文件中的每条字记录可以包括用于记录拼音的拼音字段和用于记录可与该拼音相匹配的部分或全部字的字段。可以看出,每个拼音在表l所示字库文件中对应有一条匹配的字记录,利用表l所示的字库文件可以清楚的记录每个拼音与可与该拼音相匹配的字之间的对应关系,可以根据拼音从字库文件中查找到该拼音相匹配的字记录,进而查找出可与该拼音相匹配的一个或多个字。在一种应用场景下,词库文件可以如表2所示,但不局限于此表2<table>tableseeoriginaldocumentpage10</column></row><table>如表2所示,词库文件中的记录均可以称之为词组记录,其中,词库文件中的每条记录可以包括用于记录字的字段和用于记录以该字为首的全部词组的词组字段。可以看出,每个字在表2所示的词库文件中都对应有一条相匹配的词组记录,利用表2所示的词库文件可以清楚的记录字与以该字为首的多个词组之间的对应关系,可以根据某个字从词库文件中查找到该字相匹配的词组记录,进而可以查找到以该字为首的一个或多个词组。在一种应用场景下,根据字库文件生成的拼音偏移表的数据结构可以如表3所示,但不局限于此表3<table>tableseeoriginaldocumentpage10</column></row><table>如表3所示,拼音偏移表的每条记录可以包括用于记录拼音的拼音字段、用于记录与该拼音相匹配的字记录在字库文件中的偏移量的偏移量字段。上述拼音偏移表还可以进一步包括用于记录与该拼音相匹配的字记录的长度信息,以方便从字库文件中读取出该拼音对应的全部字。可以看出,利用拼音偏移表可以清楚的记录与每个拼音相匹配的字记录在字库文件中的起始位置(偏移量),根据拼音偏移表中记录的偏移量,能够快速的在字库文件中找到与该拼音相匹配的字记录,进而可以快速的从字库文件中读取出可与该拼音相匹配的一个或多个字。在一种应用场景下,根据词库文件生成的字偏移表的数据结构可以如表4所示,但不局限于此表4字拼音偏移量子节点阿500有阿1500没有如表4所示,字偏移表的每条记录可以包括用于记录字的字段、用于记录与该字相匹配的词组记录在词库文件中的偏移量的偏移量字^:、用于记录该字拼音的拼音字段,拼音字段主要用于记录该字为多音字时的拼音。字偏移表还可以包括用于记录该字是否有子节点的子节点字H若有子节点,表示其它字通过哈西(HASH)表也可以找到该字的记录,若没有子节点,表示其他字通过HASH表不能找到该字的记录。在一种应用场景下,字偏移表可以采用HASH表的存储结构,查找搜索时采用HASH算法进行查找搜索。202、获取用户输入的4并音。在一种应用场景下,可以获取用户通过输入设备(例如,键盘)输入的4丼音,获取的用户输入的拼音可以是一个完整的拼音,也可以是某个拼音的开头部分。举例来说,可以获取用户通过键盘输入的拼音"zhuo"。203、从拼音偏移表中查找出与上述获取的拼音相匹配的字记录在字库文件中的偏移量。在一种应用场景下,可以根据获取的拼音在拼音偏移表中进行查找,查找出与上述获取的拼音相匹配的字记录在字库文件中的偏移量。举例来说,若获取到的用户输入的拼音为"zhuo",则可以根据拼音"zhuo"在拼音偏移表中进行查找,进而查找出与拼音"zhuo"相匹配的字记录在字库文件中的偏移量,例如查找出偏移量为5000。特别的,若获取到的拼音只有声母,则可以将拼音偏移表中所有包括该声母的多个拼音作为匹配对象,可以在拼音偏移表中查找出与上述所有包括该声母的拼音相匹配的字记录在字库文件中的偏移量,进而可以将查找到的一系列拼音对象中最接近获取到的拼音所对应的汉字优先输出以供选择。204、利用上述查找出的字记录的偏移量,从字库文件中读耳又出与上述获取的拼音相匹配的字记录中的一个或多个字以供选择。其中,字库文件中的字记录在字库文件中的偏移量是字记录在字库文件中的起始位置,根据字库文件的表头指针地址和字记录在字库文件中的起始位置,就可以快速的在字库文件中查找到该字记录。举例来说,若在拼音偏移表中查找出与拼音"zhuo"相匹配的字记录在字库文件中的偏移量5000、也就获得了与拼音"zhuo"相匹配的字记录在字库文件中的起始位置。根据字库文件的表头指针地址和与"zhuo"相匹配的字记录在字库文件中的起始位置,就可以快速的在字库文件中查找到该字记录,进而可以从字库文件中读取出该字记录中的一个或多个字以供选择。进一步的,若该字记录中的字较多,可以分批的从字库文件中读取出该字记录中的字以供选择。可以根据用户的选择,输入被用户选择的字。205、获得被选择的字,并从字偏移表中查找出与上述获得的字相匹配的词组记录在词库文件中的偏移量。在一种应用场景下,当根据用户的选择获得被选择的某个字后,可以进一步进行联想,在字偏移表中进行查找,查找出与上述获得的被选择的字相匹配的词组记录在词库文件中的偏移量。206、利用上述查找出的词组记录的偏移量,从词库文件中读取出与上述获得的字相匹配的词组记录中的一个或多个词以供选4奪。其中,词库文件中的词组记录在词库文件中的偏移量是词组记录在词库文件中的起始位置,根据词库文件的表头指针地址和词组记录在词库文件中的起始位置,就可以快速的在词库文件中查找到该词组记录。举例来说,若获得被用户选择的字为"茁,,,可以在汉字偏移表中查找与"茁,,相匹配的词组记录在词库文件中的偏移量、也就获得了与"茁"相匹配的词组记录在词库文件中的起始位置。根据词库文件的表头指针地址和与"茁"相匹配的词组记录在词库文件中的起始位置,就可以快速的在词库文件中查找到该词组记录,进而可以从词库文件中读耳又出该词组记录中的一个或多个词以供选择。进一步的,若该词组记录中的词组较多,可以分批的从词库文件中读取出该词组记录中的词组以供选择。可以根据用户的选择,输入被用户选择的词组。在一种应用场景下,若获取到用户连续输入的两个或两个以上的拼音,可以先从字库文件查找出与第一个拼音相匹配的字记录中的全部字(下面用集合A表示)。从字偏移表中查找出与集合A中的每个汉字相匹配的词组记录的在所述词库文件中的偏移量,并利用查找出的词组记录的偏移量,在词库中查找到与第一个4并音相匹配的字记录中的每个汉字相匹配的词组记录中的全部词组(下面用集合B表示)。从拼音偏移表中查找出与第二个拼音相匹配的字记录在字库文件中的偏移量,并利用查找出的偏移量,在字库文件中查找到与第二个拼音相匹配的字记录中的全部汉字(下面用集合B表示),将集合B和集合C进行交叉匹配,根据交叉匹配的结果,从词库文件读取出与第一个拼音相匹配的字记录中的每个汉字相匹配的词组记录(集合B)中的一个或多个词组以供选择,其中,上述读取出一个或多个词组的第二个字与第二个拼音相匹配的字记录(集合C)中的一个或多字相同,以此类推。举例来说,若获取到用户连续输入的拼音为"zhuozhuang",其中,第一个拼音为"zhuo",第二个4并音为"zhuang"。若从字库文件中查找到可与第一个拼音"zhuo"相匹配的字包括"着、著、桌、捉、卓、琢、缴、灼、酌、拙、浊、濯、茁、咏、斫、镯、涿"等。若从词库文件中查找到与上述"着,,字相匹配的词组包括"着(重、力、手、眼于、眼、想、实、目艮点、陆、色、装、落、意、墨、笔)"等。从字库文件中查找到可与第二个拼音"zhuang"相匹配的字包括"装、状、壮、庄、撞、妆、幢、桩、奖、僮、戆"等。将与"着"字相匹配的词组和可与第二个拼音"zhuang,,相匹配的字交叉匹配查找,通过交叉匹配查找可以得出,与拼音"zhuang"相匹配的字"装"和与"着,,字相匹配的词组"着装,,的第二个字相同,进而可以从词库中读取由上述技术方案可以看出,本实施例中,根据字库文件和词库文件在内存中生成拼音偏移表和字偏移表,利用拼音偏移表和字偏移表从字库文件和词库文件中查找字词,较现有的在内存中生成的搜索树相比,拼音偏移表和字偏移表结构简单体积小,能够相对减少字词查找对内存资源的消耗,有利于节约内存资源。为更好的实施本发明的技术方案,相应的,本发明实施例中还提供一种字词查找装置。请参见图3,本发明实施例的一种字词查找装置可以包括第一导入生成模块310、获取模块320、第一查找模块330和字读取模块340。其中,第一导入生成模块310,用于将字库文件导入内存,并利用字库文件生成拼音偏移表,上述字库文件包括分别与各个拼音相匹配的字记录,上述拼音偏移表包括用于记录拼音的字段和用于记录与该拼音相匹配的字记录在字库文件中的偏移量的字段。获取模块320,用于获取第一拼音。第一查找模块330,用于从上述拼音偏移表中查找出与第一拼音相匹配的字记录在上述字库文件中的偏移量。字读取模块340,用于利用第一查找模块330查找出的偏移量,从上述字库文件中读取出与第一拼音相匹配的字记录中一个或多个字以供选择。在一种应用场景下,上述字词查找装置还可以包括第二导入生成模块(图3中未示出)。第二导入生成模块,将词库文件导入内存,并根据上述词库文件生成字偏移表,上述词库文件包括分别与多个字相匹配的词组记录,上述字偏移表包括用于记录字的字段和用于记录与该字相匹配的词组记录在词库文件中的偏移量的字段。在一种应用场景下,第二导入生成模块可以包括第二导入子模块和第二生成子模块(图3中未示出)。第二导入子模块,用于将词库文件导入内存,上述词库文件包括分别与多个字相匹配的词组记录。第二生成子模块,用于根据第二导入子模块导入的词库文件生成采用哈西表存储结构的字偏移表,上述字偏移表包括用于记录字的字段和用于记录与该字相匹配的词组记录在词库文件中的偏移量的字段。在一种应用场景下,上述字词查找装置还可以包括第二查找模块和词读取模块(图3中未示出)第二查找模块,用于在获得被选择的字后,从字偏移表中查找出与上述获得的字相匹配的词组记录在所述词库文件中的偏移量。词读取模块,用于利用第二查找模块查找出的词组记录的偏移量,从上述选择。在一种应用场景下,获取模块320还可以用于,获取第二拼音。第一查找模块330还用于,从上述拼音偏移表中查找出与第二拼音相匹配的字记录在上述字库文件中的偏移量。上述字词查找装置还可以包括字查找模块,用于利用第一查找模块330查找出的偏移量,在上述字库文件中查找到与第二拼音相匹配的字记录第二查找模块还可以用于,从字偏移表中查找出与第一拼音相匹配的字记上述字词查找装置还可以包括词组查找模块,用于利用第二查找模块查找出的词组记录的偏移量,在词库中查找到与第一4并音相匹配的字记录中的每个汉字相匹配的词组记录。词读取模块还可以用于,将与第一拼音相匹配的字记录中的每个汉字相匹配的词组记录中的词组和与第二拼音相匹配的字记录中的字进行交叉匹配,,根据交叉匹配的结果从词库文件读取出与第一拼音相匹配的字记录中的每个汉字相匹配的词组记录中一个或多个词组以供选择,上述读取出一个或多个词组的第二个字与第二拼音相匹配的字记录中的其中一个字相同。可以理解的是,本实施例的字词查找装置的各个功能模块的功能可以根据实施例二中的方法具体实现,其具体实现过程可参考实施例二中的相关描述,此处不再赘述。需要说明的是,对于前述的各方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本发明并不受所描述的动作顺序的限制,因为依据本发明,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作和模块并不一定是本发明所必须的。在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其他实施例的相关描述。综上所述,本发明实施例的技术方案中,根据字库文件和词库文件在内存中生成拼音偏移表和字偏移表,利用拼音偏移表和字偏移表从字库文件和词库文件中查找字词,较现有的在内存中生成的搜索树相比,拼音偏移表和字偏移表结构简单体积小,能够相对减少字词查找对内存资源的消耗,有利于节约内存资源。骤是可以通过程序来指令相关的硬件来完成,该程序可以存储于一计算机可读存储介质中,存储介质可以包括只读存储器、随机存储器、磁盘或光盘等。以上对本发明实施例所提供的一种字词查找方法和装置进行了详细介绍,本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。权利要求1、一种字词查找方法,其特征在于,包括将字库文件导入内存,并根据所述字库文件生成拼音偏移表,所述字库文件包括分别与各个拼音相匹配的字记录,所述拼音偏移表包括用于记录拼音的字段和用于记录与该拼音相匹配的字记录在字库文件中的偏移量的字段;获取第一拼音;从所述拼音偏移表中查找出与第一拼音相匹配的字记录在所述字库文件中的偏移量;利用所述查找出的偏移量,从所述字库文件中读取出与第一拼音相匹配的字记录中一个或多个字以供选择。2、根据权利要求1所述的方法,其特征在于,所述方法还包括将词库文件导入内存,并根据所述词库文件生成字偏移表,所述词库文件包括分别与多个字相匹配的词组记录,所述字偏移表包括用于记录字的字段和用于记录与该字相匹配的词组记录在词库文件中的偏移量的字段。3、根据权利要求2所述的方法,其特征在于,所述利用所述词库文件生成字偏移表具体为利用所述词库文件生成采用哈西表存储结构的字偏移表。4、根据权利要求2或3所述的方法,其特征在于,所述方法还包括在获得被选择的字后,从字偏移表中查找出与所述获得的字相匹配的词组记录在所述词库文件中的偏移量;利用所述查找出的词组记录的偏移量,从所述词库文件中读取出与所述获得的字相匹配的词组记录中一个或多个词组以供选择。5、根据权利要求2或3所述的方法,其特征在于,所述方法还包括获取第二拼音;从所述拼音偏移表中查找出与第二拼音相匹配的字记录在所述字库文件中的偏移量,并利用所述查找出的偏移量,在所述字库文件中查找到与第二拼音相匹配的字记录;从字偏移表中查找出与第一拼音相匹配的字记录中的每个汉字相匹配的词组记录的在所述词库文件中的偏移量,并利用所述查找出的词组记录的偏移量,在词库中查找到与第一拼音相匹配的字记录中的每个汉字相匹配的词组记录;将与第一拼音相匹配的字记录中的每个汉字相匹配的词组记录中的词组和与第二拼音相匹配的字记录中的字进行交叉匹配,根据交叉匹配的结果从词库文件读取出与第一4丼音相匹配的字记录中的每个汉字相匹配的词组记录中一个或多个词组以供选择,所述读取出一个或多个词组的第二个字与第二拼音相匹配的字记录中的其中一个字相同。6、一种字词查找装置,其特征在于,包括第一导入生成;f莫块,用于将字库文件导入内存,并利用所述字库文件生成拼音偏移表,所述字库文件包括分别与各个拼音相匹配的字记录,所述拼音偏移表包括用于记录拼音的字段和用于记录与该拼音相匹配的字记录在字库文件中的偏移量的字段;获取模块,用于获取第一拼音;第一查找模块,用于从所述拼音偏移表中查找出与第一拼音相匹配的字记录在所述字库文件中的偏移量;字读取模块,用于利用所述第一查找模块查找出的偏移量,从所述字库文件中读取出与第一拼音相匹配的字记录中一个或多个字以供选择。7、根据权利要求6所述的装置,其特征在于,所述装置还包括第二导入生成^f莫块,将词库文件导入内存,并利用所述词库文件生成字偏移表,所述词库文件包括分别与多个字相匹配的词组记录,所述字偏移表包括用于记录字的字段和用于记录与该字相匹配的词组记录在词库文件中的偏移量的字段。8、根据权利要求7所述的装置,其特征在于,所述第二导入生成模块包括第二导入子模块,用于将词库文件导入内存,所述词库文件包括分别与多个字相匹配的词组i己录;第二生成子模块,用于利用所述第二导入子模块导入的词库文件生成采用哈西表存储结构的字偏移表,所述字偏移表包括用于记录字的字段和用于记录与该字相匹配的词组记录在词库文件中的偏移量的字段。9、根据权利要求7或8所述的装置,其特征在于,所述装置还包括第二查找模块,用于在获得被选择的字后,从字偏移表中查找出与所述获得的字相匹配的词组记录在所述词库文件中的偏移量;词读取模块,用于利用所述第二查找模块查找出的词组记录的偏移量,从所述词库文件中读取出与所述获得的字相匹配的词组记录中一个或多个词组以供选择。10、根据权利要求7或8所述的装置,其特征在于,所述获取模块还用于,获取第二拼音;所述第一查找模块还用于,从所述拼音偏移表中查找出与第二拼音相匹配的字记录在所述字库文件中的偏移量;所述装置还包括字查找模块,用于利用所述第一查找模块查找出的偏移量,在所述字库文件中查找到与第二拼音相匹配的字记录;所述第二查找模块还用于,从字偏移表中查找出与第一拼音相匹配的字记所述装置还包括词组查找模块,用于利用所述第二查找模块查找出的词组记录的偏移量,在词库中查找到与第一拼音相匹配的字记录中的每个汉字相匹配的词组记录;所述词读取模块还用于,将与第一拼音相匹配的字记录中的每个汉字相匹配的词组记录中的词组和与第二拼音相匹配的字记录中的字进行交叉匹配,根据交叉匹配的结果从词库文件读取出与第一拼音相匹配的字记录中的每个汉字相匹配的词组记录中一个或多个词组以供选择,所述读取出一个或多个词组的第二个字与第二拼音相匹配的字记录中的其中一个字相同。全文摘要本发明实施例公开了一种字词查找方法和装置。字词查找方法包括将字库文件导入内存,并根据字库文件生成拼音偏移表,字库文件包括分别与各个拼音相匹配的字记录,拼音偏移表包括用于记录拼音的字段和用于记录与该拼音相匹配的字记录在字库文件中的偏移量的字段;获取第一拼音;从拼音偏移表中查找出与第一拼音相匹配的字记录在字库文件中的偏移量;利用查找出的偏移量,从字库文件中读取出与第一拼音相匹配的字记录中一个或多个字以供选择。本发明实施例的技术方案能够相对减少字词查找对内存资源的消耗,有利于节约内存资源。文档编号G06F17/30GK101599085SQ20091014834公开日2009年12月9日申请日期2009年6月15日优先权日2009年6月15日发明者徐佳宏,麻林茂,黄生玲申请人:深圳市茁壮网络股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1