CN101783788B - 文件压缩、解压缩方法、装置及压缩文件搜索方法、装置 - Google Patents
文件压缩、解压缩方法、装置及压缩文件搜索方法、装置 Download PDFInfo
- Publication number
- CN101783788B CN101783788B CN200910076795.3A CN200910076795A CN101783788B CN 101783788 B CN101783788 B CN 101783788B CN 200910076795 A CN200910076795 A CN 200910076795A CN 101783788 B CN101783788 B CN 101783788B
- Authority
- CN
- China
- Prior art keywords
- word string
- file
- text
- encoded
- standard word
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Landscapes
- Compression, Expansion, Code Conversion, And Decoders (AREA)
- Document Processing Apparatus (AREA)
Abstract
本发明实施例提供一种文件压缩、解压缩方法、装置及压缩文件搜索方法、装置,该文件压缩装置包括:第一保存模块,用于保存一编码表,编码表记录了标准字串与编码标识之间的对应关系,每个标准字串具有唯一的编码标识;第一获取模块,用于获取待压缩文件中的部分或全部文本,形成待编码文本;第一分词模块,用于根据标准字串对待编码文本进行分词,将待编码文本分解成至少一个待编码字串;第一编码模块,用于根据编码表中记录的标准字串与编码标识之间的对应关系,利用标准字串的所述编码标识代替对应的所述至少一个待编码字串,得到与所述待编码文本对应的第一编码序列。本发明提高了文本压缩算法的压缩率和检索的方便性。
Description
技术领域
本发明涉及文件压缩技术领域,特别是一种文件压缩、解压缩方法、装置及压缩文件搜索方法、装置。
背景技术
随着计算机技术的不断前进,各种类型的数据文件越来越庞大,因此,导致其存储占用越来越多的存储空间,而传输的时候需要占用越来越多的带宽。因此,数据文件压缩在计算机技术中显得越来越重要。
现在,针对数据文件的压缩分为有损压缩和无损压缩两种,我们常用的WinRAR、WinZip都是属于无损压缩,其基本原理都是一样的,简单地说也就是把文件中的重复数据用更简洁的方法表示,也就是去除数据冗余。
现有的文本压缩算法中,包括一类统计压缩算法,如Huffman(哈夫曼)算法等,说明如下。
Huffman算法是一种基于统计的压缩方法。它的本质就是对文本文件中的字符进行重新编码,对于使用频率越高的字符,其编码也越短。
经过编码后的文本文件,主要包含2个部分:Huffman码表部分和压缩内容部分。解压缩的时候,先把Huffman码表取出来,然后对压缩内容部分各个字符进行逐一解码,形成源文件。
由此可见,使用Huffman算法的关键是形成Huffman码表。这里就要用到Huffman树的数据结构。当把一棵Huffman树生成后,码表也就生成了。
下举例说明,假定我们的原始文本为″abcbbcccc″。
Huffman树的生成包括如下步骤:
步骤A1,扫描源文件,对字符频率进行统计。
对于样例,统计结果是:a出现1次,b出现3次,而c出现5次,记为如图1所示的队列,a:1 b:3 c:5。
步骤A2,从上述队列中取出频率最低的2个节点,合并成一个频率为2节点频率之和的树枝节点X,加入到原队列中,加入后,继续保持队列按频率升序排列;
对于样例,得到如图2所示的队列;
步骤A3,重复步骤A2,直到队列中只有一个节点。
步骤A4,通过上述步骤得到图3所示的Huffman树,叶子节点为字符,而从树根节点到叶子节点的路径即为该字符的Huffman编码。从一个节点导航到其左孩子,该段路径为0,导航到右孩子,该段路径为1。
如图3所示,可以知道a字符的编码就是00,b字符的编码为01,而c字符的编码为1,Huffman码表生成后,原文本″abcbbcccc″就变成了0001101011111的位串,按每个字符占用2个byte计算,大小由原来的18个字节(9*2),共144个bit,变成了13个bit,2个字节。达到了压缩的目的。
解压缩过程如下所述,首先根据Huffman码表生成一棵Huffman树,然后,根据Huffman树,对压缩内容进行解压缩。
比如如果压缩内容为位串0001101011111,结合图3所示,那么从树根节点起,因为第一个bit为0,先转向左子树,第二个bit为0,再转向左子树,到达叶子节点a,所以解码出来的第一个字符就是a,每次解压一个字符,都从根节点起,根据bit流,向左或向右转,直到到达叶子节点,也就是解压出来的字符,一直重复此过程,直到所有的字符都被解压缩。
然而发明人在实现本发明的过程中,发现现有技术至少存在如下缺点:
现有技术中,针对每一个文本压缩文档都必须包括两部分,一部分是用于编码的码表,另一部分为文本压缩后的编码序列,由于这二者是在一个压缩文档中,所以导致压缩率不是很理想,因此有必要提出新的压缩方案,以进一步提高文本压缩算法的压缩率。
发明内容
本发明实施例的目的是提供一种文件压缩、解压缩方法、装置及压缩文件搜索方法、装置,以提高文本压缩算法的压缩率。
为了实现上述目的,本发明实施例提供了一种文件压缩装置,包括:
第一保存模块,用于保存一编码表,所述编码表记录了标准字串与编码标识之间的对应关系,每个所述标准字串具有唯一的所述编码标识;
第一获取模块,用于获取待压缩文件中的部分或全部文本,形成待编码文本;
第一分词模块,用于根据所述标准字串对所述待编码文本进行分词,将所述待编码文本分解成至少一个待编码字串;
第一编码模块,用于根据所述编码表中记录的所述标准字串与所述编码标识之间的对应关系,利用所述标准字串的所述编码标识代替对应的所述至少一个待编码字串,得到与所述待编码文本对应的第一编码序列。
上述的文件压缩装置,其中,所述编码标识以数字表示,且所述标准字串在组成语料库的文本文件中出现的频率越高,用于表示所述字串的编码标识的数字越小。
上述的文件压缩装置,其中,还包括:
统计模块,用于对所述组成语料库的文本文件进行词频统计,得到所述标准字串在所述文本文件中出现的频率。
上述的文件压缩装置,其中,所述编码表中,对应于每一个所述标准字串设置有搜索字段,所述搜索字段用于记录文件标识,所述搜索字段中记录的文件标识所指示的文件包括所述搜索字段对应的所述标准字串,所述文件压缩装置还包括:
修改模块,用于将所述待压缩文件的文件标识添加到每个所述至少一个待编码字串对应的所述搜索字段中。
为了实现上述目的,本发明实施例还提供了一种文件压缩方法,其特征在于,包括:
获取待压缩文件中的部分或全部文本,形成待编码文本;
根据标准字串对所述待编码文本进行分词,将所述待编码文本分解成至少一个待编码字串;
根据预先保存的编码表中记录的所述标准字串与编码标识之间的对应关系,利用所述标准字串的编码标识代替对应的所述至少一个待编码字串,得到与所述待编码文本对应的第一编码序列,每个所述标准字串具有唯一的所述编码标识。
上述的方法,其中,所述编码标识以数字表示,所述标准字串在组成语料库的文本文件中出现的频率越高,用于表示所述字串的编码标识的数字越小。
上述的方法,其中,所述编码表中,对应于每一个所述标准字串设置有搜索字段,所述搜索字段用于记录文件标识,所述搜索字段中记录的文件标识所指示的文件包括所述搜索字段对应的所述标准字串,所述方法还包括:
将所述待压缩文件的文件标识添加到每个所述至少一个待编码字串对应的所述搜索字段中。
为了实现上述目的,本发明实施例还提供了一种文件解压缩装置,其特征在于,包括:
第三获取模块,用于获取第一待解码序列;
第一解码模块,用于根据预先保存的编码表中记录的标准字串与编码标识的对应关系,利用所述标准字串代替所述第一待解码序列中对应的编码标识,得到与所述第一待解码序列对应的文本,每个所述标准字串具有唯一的所述编码标识。
上述的装置,其中,所述编码标识与以数字表示,所述标准字串在组成语料库的文本文件中出现的频率越高,用于表示所述字串的编码标识的数字越小。
上述的装置,其中,还包括:
统计模块,用于对所述组成语料库的文本文件进行词频统计,得到所述标准字串在所述文本文件中出现的频率。
上述的装置,其中,还包括:
第二解码模块,用于利用预设数值解压缩算法,对第二待解码序列进行解压缩,得到所述第一待解码序列。
为了实现上述目的,本发明实施例还提供了一种文件解压缩方法,其特征在于,包括:
获取第一待解码序列;
根据预先保存的编码表中记录的标准字串与编码标识的对应关系,利用所述标准字串代替所述第一待解码序列中对应的编码标识,得到与所述第一待解码序列对应的文本,每个所述标准字串具有唯一的所述编码标识。
上述的装置,其中,所述编码标识与以数字表示,所述标准字串在组成语料库的文本文件中出现的频率越高,用于表示所述字串的编码标识的数字越小。
上述的装置,其中,还包括:
利用预设数值解压缩算法,对第二待解码序列进行解压缩,得到所述第一待解码序列。
为了实现上述目的,本发明实施例还提供了一种压缩文件搜索装置,其特征在于,包括:
第一保存模块,用于预先保存一编码表,所述编码表记录了标准字串与以数字表示的编码标识之间的对应关系,每个所述标准字串具有唯一的所述编码标识,所述编码表中,对应于每一个所述标准字串设置有搜索字段,所述搜索字段用于记录文件标识,所述文件标识所指示的文件包括所述搜索字段对应的所述标准字串;
第二获取模块,用于获取用户输入的搜索字符串;
第二分词模块,用于根据所述标准字串对所述搜索字符串进行分词,得到至少一个待搜索字串;
文件标识提取模块,用于从所述编码表中分别获取每个所述至少一个待搜索字串所对应的文件标识集合;
搜索结果输出模块,用于将所述文件标识集合的交集作为搜索结果输出。
为了实现上述目的,本发明实施例还提供了一种压缩文件搜索方法,包括:
获取用户输入的搜索字符串;
根据所述标准字串对所述搜索字符串进行分词,得到至少一个待搜索字串;
从预先保存的编码表中分别获取每个所述至少一个待搜索字串所对应的文件标识集合;所述编码表记录了标准字串与以数字表示的编码标识之间的对应关系,每个所述标准字串具有唯一的所述编码标识,且所述编码表中,对应于每一个所述标准字串设置有搜索字段,所述搜索字段用于记录文件标识,所述文件标识所指示的文件包括所述搜索字段对应的所述标准字串;
将所述文件标识集合的交集作为搜索结果输出。
为了实现上述目的,本发明实施例还提供了一种文件压缩传输方法,包括:
获取待压缩文件中的部分或全部文本,形成待编码文本;
根据所述标准字串对所述待编码文本进行分词,将所述待编码文本分解成至少一个待编码字串;
根据预先保存的编码表中记录的标准字串与编码标识之间的对应关系,利用所述标准字串的编码标识代替对应的所述至少一个待编码字串,得到与所述待编码文本对应的第一编码序列,每个所述标准字串具有唯一的所述编码标识;
将所述第一编码序列发送到网络存储服务器。
上述的装置,其中,在获取待压缩文件中的部分文本时,所述方法还包括:
重复获取文本到发送编码序列的步骤,直至所述待压缩文件中的文本全部压缩传输完毕。
为了实现上述目的,本发明实施例还提供了一种文件压缩传输装置,包括:
第一保存模块,用于保存一编码表,所述编码表记录了标准字串与编码标识之间的对应关系,每个所述标准字串具有唯一的所述编码标识;
第一获取模块,用于获取待压缩文件中的部分或全部文本,形成待编码文本;
第一分词模块,用于根据所述标准字串对所述待编码文本进行分词,将所述待编码文本分解成至少一个待编码字串;
第一编码模块,用于根据所述编码表中记录的所述标准字串与编码标识之间的对应关系,利用所述标准字串的编码标识代替对应的所述至少一个待编码字串,得到与所述待编码文本对应的第一编码序列;
传输模块,用于将所述第一编码序列发送到网络存储服务器。
本发明实施例具有以下的有益效果:
首先,本发明实施例中预先保存一个针对于所有文本压缩的码表,所以每个压缩文件中都不包括码表,因此,大大缩小了压缩后的文本文件的数据量,提高了压缩率;
其次,本发明实施例中的码表是针对全局的,是基于一个大的语料库得到的全局的字串的编码标识,因此能够提供更高的压缩比;
再次,相对于现有技术的压缩后传输到网络存储服务器的技术方案相比,由于可以预先在网络存储服务器存储相同的编码表,所以压缩后的编码序列不包括编码表,降低了网络负担,而且该编码表对所有压缩文本都适用,在网络存储的文本较多时,减少了存储量;
最后,由于使用预先得到的编码表,所以在发送端可以将待压缩文本分成多个部分分别处理,处理完一部分及时传输,降低了对临时存储的需求。
附图说明
图1到图3为Huffman算法的文本压缩处理的过程示意图;
图4为本发明实施例的文件压缩装置的结构示意图;
图5为本发明实施例的文件压缩方法的流程示意图;
图6为本发明实施例的压缩文件搜索方法的流程示意图。
具体实施方式
本发明实施例的方法及装置中,预先保存一数据库,该数据库记录了用于形成文本的字或词的利用数字表示的编码,在进行文本压缩时,利用该数据库进行编码,提高压缩比,同时,通过在编码表中增加一搜索字段,利用该编码表即可进行搜索,节省了搜索的资源消耗。
如图1所示,本发明实施例的数据文件中的文件压缩装置包括:
第一保存模块,用于保存一编码表,所述编码表记录了所述标准字串对应的编码标识,所述编码标识以数字表示,且每个所述标准字串具有唯一的所述编码标识(也就是每个标准字串的编码标识都是不同的,标准字串与编码标识具有一一对应关系),所述标准字串在组成语料库的文本文件中出现的频率越高,用于表示所述字串的编码标识的数字越小;
第一获取模块,用于获取待压缩文件中的部分或全部文本,形成待编码文本;
第一分词模块,用于根据所述编码表中的所述标准字串对所述待编码文本进行分词,将所述待编码文本分解成至少一个待编码字串;
第一编码模块,用于利用所述标准字串的编码标识代替对应的所述至少一个待编码字串,得到与所述待编码文本对应的第一编码序列。
由上面可以知道所述标准字串的编码标识与其出现频率相关,因此,本发明实施例的文件压缩装置还包括:
统计模块,用于根据组成所述语料库的所述文本文件进行词频统计,得到组成所述文本文件的所述标准字串在所述文本文件中出现的频率;
现有的分词算法分为三大类:基于字符串匹配的分词方法、基于理解的分词方法和基于统计的分词方法,在本发明的具体实施例中不进行具体限定。
上述表格中记录的字串与编码标识满足如下的条件:
1、标码标识具有唯一性;
2、标准字串与标码标识具有一一对应关系;
3、标准字串在组成语料库的文本文件出现的次数越多,用于表示所述字串的编码标识的数字越小。
下面以具体的实例对本发明实施例进行详细说明。
假定利用多个文本文件进行词频统计后,编码表中保存了如下表所示的对应关系,应当了解的是,在此仅仅是举例说明,编码标识并不代表实际的情形:
标准字串 | 编码标识 |
…… | …… |
的 | ID1 |
…… | …… |
文字 | ID2 |
进行 | ID3 |
…… | …… |
适当 | ID4 |
描述 | ID5 |
…… | …… |
采用 | ID6 |
…… | …… |
假定此时获取模块得到的待编码文本为“采用适当的文字”,通过分词模块得到如下的待编码字串:采用、适当、的、文字。
查找编码表可以得到待编码文本的编码序列:ID6 ID4 ID1 ID2。
本发明实施例相对于现有的基于统计的压缩方法具有以下的有益效果:
本发明实施例中预先保存一个针对于所有文本压缩的码表,所以每个压缩文件中都不包括码表,因此,大大缩小了压缩后的文本文件的数据量,提高了压缩率;
本发明实施例中的码表是针对全局的,是基于一个大的语料库得到的全局的字串的编码标识,因此能够提供更高的压缩比。
同时,现有技术中,为了提供搜索服务,需要将压缩的文本文件解压缩后,才能提供搜索服务,本发明实施例中为了进一步提供搜索服务,该编码表中,对应于每一个所述标准字串还设置有一搜索字段,该搜索字段用于记录对应的标准字串出现在哪些文件中,因此,文件压缩装置还包括:
数据库修改模块,用于将所述待压缩文件的文件标识添加到每个所述至少一个待编码字串对应的搜索字段中;
该压缩文件搜索装置包括:
第二获取模块,用于获取用户输入的搜索字符串;
第二分词模块,用于根据所述标准字串对所述搜索字符串进行分词,得到至少一个待搜索字串;
文件标识提取模块,用于从所述编码表中分别获取每个所述至少一个待搜索字串所对应的文件标识集合;
搜索结果输出模块,用于将所述文件标识提取模块得到的所述文件标识集合的交集作为搜索结果输出。
通过上述的处理,利用本发明实施例的压缩装置,在提供搜索服务时,利用该编码表即可进行搜索服务,而不用将压缩文件进行解压缩,节约了***的资源。
同时,可以知道,第一编码模块的输出结果是一个数字序列,因此,为了进一步提高压缩率,本发明实施例的文件压缩装置还包括:
第二压缩模块,用于利用预设数值压缩编码算法,分别对所述第一编码模块得到的编码序列中的与所述至少一个待编码字串对应的编码标识进行压缩编码,得到与所述待编码文本对应的第二编码序列。
其中,该预设数值压缩编码算法可以是游程定长编码算法、游程变长编码算法等数值压缩编码算法。
同时,由于本发明实施例中利用预先保存的编码表,而不是利用待压缩文件中的文本来获取编码标识,所以本发明实施例的文件压缩装置用于网络传输时,可以对一个文本文件中的文本分成多个部分进行串行处理,而不用等待读取整个文件,所以能够节省处理时间。
本发明实施例的数据文件中的文本压缩方法,如图5所示,包括:
步骤51,获取待压缩文件中的部分或全部文本,形成待编码文本;
步骤52,根据编码表中的标准字串对所述待编码文本进行分词,将所述待编码文本分解成至少一个待编码字串;所述编码表记录了所述标准字串对应的编码标识,所述编码标识以数字表示,且每个所述标准字串具有唯一的所述编码标识,所述标准字串在组成语料库的文本文件中出现的频率越高,用于表示所述标准字串的编码标识的数字越小;
步骤53,利用所述标准字串的编码标识代替对应的所述至少一个待编码字串,得到与所述待编码文本对应的第一编码序列;
步骤54,利用预设数值压缩编码算法,分别对所述第一编码序列中的与所述至少一个待编码字串对应的编码标识进行压缩编码,得到与所述待编码文本对应的第二编码序列。
本发明实施例还提供了对图5所示的压缩方法得到的压缩文件的搜索方法,如图6所示,包括:
步骤61,获取用户输入的搜索字符串;
步骤62,根据标准字串对所述搜索字符串进行分词,得到至少一个待搜索字串;
步骤63,从编码表中分别获取每个所述至少一个待搜索字串所对应的文件标识集合;
步骤64,将所述文件标识集合的交集作为搜索结果输出。
本发明实施例的文件解压缩装置包括:
第一保存模块,用于保存一编码表,所述编码表记录了所述标准字串对应的编码标识,所述编码标识以数字表示,且每个所述标准字串具有唯一的所述编码标识,所述标准字串在组成语料库的文本文件中出现的频率越高,用于表示所述字串的编码标识的数字越小;
第三获取模块,用于获取第一待解码序列;
第一解码模块,用于根据所述编码表记录的所述标准字串与所述编码标识的对应关系,利用所述标准字串代替所述第一待解码序列中对应的编码标识,得到与所述待解码序列对应的文本。
当然,如果在压缩过程中对数字序列进行了压缩,则本发明实施例的文件解压缩装置还包括:
第二解码模块,用于利用预设数值解压缩算法,对第二待解码序列进行解压缩,得到第一待解码序列;
其处理过程包括如下步骤:
利用预设数值解压缩算法,对第二待解码序列进行解压缩,得到第一待解码序列;
根据编码表记录的标准字串与编码标识的对应关系,利用所述标准字串代替所述第一待解码序列中对应的编码标识,得到与所述第一待解码序列对应的文本。
本发明实施例还提供一种文件压缩传输方法,包括:
获取待压缩文件中的全部文本或部分文本,形成待编码文本;
根据所述标准字串对所述待编码文本进行分词,将所述待编码文本分解成至少一个待编码字串;
根据预先保存的编码表中记录的标准字串与编码标识之间的对应关系,利用所述标准字串的编码标识代替对应的所述至少一个待编码字串,得到与所述待编码文本对应的第一编码序列,每个所述标准字串具有唯一的所述编码标识;
将所述第一编码序列发送到网络存储服务器。
当获取待压缩文件中的部分文本时,当然还应该重复执行上述步骤,直至待压缩文件中的全部文本处理完毕。
对应的文件压缩传输装置包括:
第一保存模块,用于保存一编码表,所述编码表记录了标准字串与编码标识之间的对应关系,每个所述标准字串具有唯一的所述编码标识;
第一获取模块,用于获取待压缩文件中的部分或全部文本,形成待编码文本;
第一分词模块,用于根据所述标准字串对所述待编码文本进行分词,将所述待编码文本分解成至少一个待编码字串;
第一编码模块,用于根据所述编码表中记录的所述标准字串与编码标识之间的对应关系,利用所述标准字串的编码标识代替对应的所述至少一个待编码字串,得到与所述待编码文本对应的第一编码序列;
传输模块,用于将所述第一编码序列发送到网络存储服务器。
相对于现有技术的压缩后传输到网络存储服务器的技术方案相比,由于可以预先在网络存储服务器存储相同的编码表,所以压缩后的编码序列不包括编码表,降低了网络负担,而且该编码表对所有压缩文本都适用,在网络存储的文本较多时,减少了存储量。
同时,由于使用预先得到的编码表,所以在发送端可以将待压缩文本分成多个部分分别处理,处理完一部分及时传输,降低了对临时存储的需求。
以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以作出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。
Claims (19)
1.一种文件压缩装置,其特征在于,包括:
第一保存模块,用于保存一编码表,所述编码表记录了标准字串与编码标识之间的对应关系,每个所述标准字串具有唯一的所述编码标识;所述编码表中,对应于每一个所述标准字串设置有搜索字段,所述搜索字段用于记录文件标识,所述搜索字段中记录的文件标识所指示的文件包括所述搜索字段对应的所述标准字串;
第一获取模块,用于获取待压缩文件中的部分或全部文本,形成待编码文本;
第一分词模块,用于根据所述标准字串对所述待编码文本进行分词,将所述待编码文本分解成至少一个待编码字串;
第一编码模块,用于根据所述编码表中记录的所述标准字串与所述编码标识之间的对应关系,利用所述标准字串的所述编码标识代替对应的所述至少一个待编码字串,得到与所述待编码文本对应的第一编码序列。
2.根据权利要求1所述的文件压缩装置,其特征在于,所述编码标识以数字表示,且所述标准字串在组成语料库的文本文件中出现的频率越高,用于表示所述字串的编码标识的数字越小。
3.根据权利要求2所述的文件压缩装置,其特征在于,还包括:
统计模块,用于对所述组成语料库的文本文件进行词频统计,得到所述标准字串在所述文本文件中出现的频率。
4.根据权利要求1或2或3所述的文件压缩装置,其特征在于,还包括:
修改模块,用于将所述待压缩文件的文件标识添加到每个所述至少一个待编码字串对应的所述搜索字段中。
5.根据权利要求1或2或3所述的文件压缩装置,其特征在于,还包括:
第二压缩模块,用于利用预设数值压缩编码算法,分别对所述第一编码模块得到的编码序列中的与所述至少一个待编码字串对应的编码标识进行压缩编码,得到与所述待编码文本对应的第二编码序列。
6.一种文件压缩方法,其特征在于,包括:
获取待压缩文件中的部分或全部文本,形成待编码文本;
根据标准字串对所述待编码文本进行分词,将所述待编码文本分解成至少一个待编码字串;
根据预先保存的编码表中记录的所述标准字串与编码标识之间的对应关系,利用所述标准字串的编码标识代替对应的所述至少一个待编码字串,得到与所述待编码文本对应的第一编码序列,每个所述标准字串具有唯一的所述编码标识;所述编码表中,对应于每一个所述标准字串设置有搜索字段,所述搜索字段用于记录文件标识,所述搜索字段中记录的文件标识所指示的文件包括所述搜索字段对应的所述标准字串。
7.根据权利要求6所述的方法,其特征在于,所述编码标识以数字表示,所述标准字串在组成语料库的文本文件中出现的频率越高,用于表示所述字串的编码标识的数字越小。
8.根据权利要求6或7所述的方法,其特征在于,所述编码表中,对应于每一个所述标准字串设置有搜索字段,所述搜索字段用于记录文件标识,所述搜索字段中记录的文件标识所指示的文件包括所述搜索字段对应的所述标准字串,所述方法还包括:
将所述待压缩文件的文件标识添加到每个所述至少一个待编码字串对应的所述搜索字段中。
9.根据权利要求6或7所述的方法,其特征在于,还包括:
利用预设数值压缩编码算法,分别对所述第一编码序列中的与所述至少一个待编码字串对应的编码标识进行压缩编码,得到与所述待编码文本对应的第二编码序列。
10.一种文件解压缩装置,其特征在于,包括:
第三获取模块,用于获取第一待解码序列;
第一解码模块,用于根据预先保存的编码表中记录的标准字串与编码标识的对应关系,利用所述标准字串代替所述第一待解码序列中对应的编码标识,得到与所述第一待解码序列对应的文本,每个所述标准字串具有唯一的所述编码标识;所述编码表中,对应于每一个所述标准字串设置有搜索字段,所述搜索字段用于记录文件标识,所述搜索字段中记录的文件标识所指示的文件包括所述搜索字段对应的所述标准字串。
11.根据权利要求10所述的文件解压缩装置,其特征在于,所述编码标识与以数字表示,所述标准字串在组成语料库的文本文件中出现的频率越高,用于表示所述字串的编码标识的数字越小。
12.根据权利要求11所述的文件解压缩装置,其特征在于,还包括:
统计模块,用于对所述组成语料库的文本文件进行词频统计,得到所述标准字串在所述文本文件中出现的频率。
13.根据权利要求10或11或12所述的文件解压缩装置,其特征在于,还包括:
第二解码模块,用于利用预设数值解压缩算法,对第二待解码序列进行解压缩,得到所述第一待解码序列。
14.一种文件解压缩方法,其特征在于,包括:
获取第一待解码序列;
根据预先保存的编码表中记录的标准字串与编码标识的对应关系,利用所述标准字串代替所述第一待解码序列中对应的编码标识,得到与所述第一待解码序列对应的文本,每个所述标准字串具有唯一的所述编码标识;所述编码表中,对应于每一个所述标准字串设置有搜索字段,所述搜索字段用于记录文件标识,所述搜索字段中记录的文件标识所指示的文件包括所述搜索字段对应的所述标准字串。
15.根据权利要求14所述的方法,其特征在于,所述编码标识与以数字表示,所述标准字串在组成语料库的文本文件中出现的频率越高,用于表示所述字串的编码标识的数字越小。
16.根据权利要求14或15所述的方法,其特征在于,还包括:
利用预设数值解压缩算法,对第二待解码序列进行解压缩,得到所述第一待解码序列。
17.一种文件压缩传输方法,其特征在于,包括:
获取待压缩文件中的部分或全部文本,形成待编码文本;
根据所述标准字串对所述待编码文本进行分词,将所述待编码文本分解成至少一个待编码字串;
根据预先保存的编码表中记录的标准字串与编码标识之间的对应关系,利用所述标准字串的编码标识代替对应的所述至少一个待编码字串,得到与所述待编码文本对应的第一编码序列,每个所述标准字串具有唯一的所述编码标识;所述编码表中,对应于每一个所述标准字串设置有搜索字段,所述搜索字段用于记录文件标识,所述搜索字段中记录的文件标识所指示的文件包括所述搜索字段对应的所述标准字串;
将所述第一编码序列发送到网络存储服务器。
18.根据权利要求17所述的方法,其特征在于,在获取待压缩文件中的部分文本时,所述方法还包括:
重复获取文本到发送编码序列的步骤,直至所述待压缩文件中的文本全部压缩传输完毕。
19.一种文件压缩传输装置,其特征在于,包括:
第一保存模块,用于保存一编码表,所述编码表记录了标准字串与编码标识之间的对应关系,每个所述标准字串具有唯一的所述编码标识;所述编码表中,对应于每一个所述标准字串设置有搜索字段,所述搜索字段用于记录文件标识,所述搜索字段中记录的文件标识所指示的文件包括所述搜索字段对应的所述标准字串;
第一获取模块,用于获取待压缩文件中的部分或全部文本,形成待编码文本;
第一分词模块,用于根据所述标准字串对所述待编码文本进行分词,将所述待编码文本分解成至少一个待编码字串;
第一编码模块,用于根据所述编码表中记录的所述标准字串与编码标识之间的对应关系,利用所述标准字串的编码标识代替对应的所述至少一个待编码字串,得到与所述待编码文本对应的第一编码序列;
传输模块,用于将所述第一编码序列发送到网络存储服务器。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN200910076795.3A CN101783788B (zh) | 2009-01-21 | 2009-01-21 | 文件压缩、解压缩方法、装置及压缩文件搜索方法、装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN200910076795.3A CN101783788B (zh) | 2009-01-21 | 2009-01-21 | 文件压缩、解压缩方法、装置及压缩文件搜索方法、装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN101783788A CN101783788A (zh) | 2010-07-21 |
CN101783788B true CN101783788B (zh) | 2014-09-03 |
Family
ID=42523607
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN200910076795.3A Active CN101783788B (zh) | 2009-01-21 | 2009-01-21 | 文件压缩、解压缩方法、装置及压缩文件搜索方法、装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN101783788B (zh) |
Families Citing this family (18)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102567322B (zh) * | 2010-12-09 | 2015-04-01 | 北京大学 | 文本压缩方法和装置 |
CN104021121B (zh) * | 2013-02-28 | 2018-01-26 | 北京四维图新科技股份有限公司 | 一种文本数据压缩方法、装置及服务器 |
CN104933063B (zh) * | 2014-03-19 | 2018-08-24 | 重庆新媒农信科技有限公司 | 数据处理方法、搜索方法及装置 |
SE538512C2 (sv) * | 2014-11-26 | 2016-08-30 | Kelicomp Ab | Improved compression and encryption of a file |
CN105447393B (zh) * | 2015-11-18 | 2018-06-01 | 国网北京市电力公司 | 用于电力***的文件传送方法和装置 |
CN106202172B (zh) * | 2016-06-24 | 2019-07-30 | 中国农业银行股份有限公司 | 文本压缩方法及装置 |
CN107818121B (zh) * | 2016-09-14 | 2022-05-10 | 阿里巴巴集团控股有限公司 | 一种html文件压缩方法、装置及电子设备 |
CN107918654B (zh) * | 2017-11-16 | 2020-07-24 | 联想(北京)有限公司 | 文件解压缩方法、装置及电子设备 |
CN108021541A (zh) * | 2017-12-15 | 2018-05-11 | 安徽长泰信息安全服务有限公司 | 一种减小文本存储内存的方法及其*** |
CN108256017B (zh) * | 2018-01-08 | 2020-12-15 | 武汉斗鱼网络科技有限公司 | 一种用于数据存储的方法、装置及计算机设备 |
CN108829872B (zh) * | 2018-06-22 | 2021-03-09 | 武汉轻工大学 | 无损压缩文件的快速处理方法、设备、***及存储介质 |
CN110032432B (zh) * | 2018-12-03 | 2023-09-26 | 创新先进技术有限公司 | 实例的压缩方法和装置、实例的解压方法和装置 |
CN110309376A (zh) * | 2019-07-10 | 2019-10-08 | 深圳市友华软件科技有限公司 | 嵌入式平台的配置条目管理方法 |
CN111431537A (zh) * | 2020-03-06 | 2020-07-17 | 平安科技(深圳)有限公司 | 数据压缩方法、装置及计算机可读存储介质 |
CN112685044A (zh) * | 2020-12-20 | 2021-04-20 | 武汉迈威通信股份有限公司 | 一种基于rom的网页压缩和存储方法及*** |
CN112684325B (zh) * | 2020-12-30 | 2022-03-18 | 杭州加速科技有限公司 | 一种ate设备中测试向量指令的压缩方法和设备 |
CN112799672A (zh) * | 2020-12-31 | 2021-05-14 | 杭州广立微电子股份有限公司 | 一种基于关键词的测试数据处理方法 |
CN113641434A (zh) * | 2021-08-12 | 2021-11-12 | 上海酷栈科技有限公司 | 一种云桌面数据压缩自适应编码方法、***及存储设备 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1630370A (zh) * | 2003-12-15 | 2005-06-22 | 联想(北京)有限公司 | 一种数据压缩的编码和解码方法 |
CN101086749A (zh) * | 2006-06-08 | 2007-12-12 | 杭州掌幄科技有限公司 | 一种电子病历的数据压缩算法 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP1104174A4 (en) * | 1998-06-09 | 2006-08-02 | Matsushita Electric Ind Co Ltd | IMAGE CODERS, IMAGE DECODERS, CHARACTERS AND DATA STORAGE MEDIUM |
-
2009
- 2009-01-21 CN CN200910076795.3A patent/CN101783788B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1630370A (zh) * | 2003-12-15 | 2005-06-22 | 联想(北京)有限公司 | 一种数据压缩的编码和解码方法 |
CN101086749A (zh) * | 2006-06-08 | 2007-12-12 | 杭州掌幄科技有限公司 | 一种电子病历的数据压缩算法 |
Also Published As
Publication number | Publication date |
---|---|
CN101783788A (zh) | 2010-07-21 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101783788B (zh) | 文件压缩、解压缩方法、装置及压缩文件搜索方法、装置 | |
CN1166072C (zh) | 用于数据压缩、传输、存储以及通信的方法、设备和*** | |
EP0695040B1 (en) | Data compressing method and data decompressing method | |
KR101049699B1 (ko) | 데이터의 압축방법 | |
CN103067022A (zh) | 一种整型数据无损压缩方法、解压缩方法及装置 | |
WO2006043142A1 (en) | Adaptive compression scheme | |
CN101534124B (zh) | 一种用于短小自然语言的压缩算法 | |
CN117040539B (zh) | 一种基于m叉树和lzw算法的石油测井数据压缩方法及装置 | |
CN104682966B (zh) | 列表数据的无损压缩方法 | |
Shoba et al. | A Study on Data Compression Using Huffman Coding Algorithms | |
Jacob et al. | Comparative analysis of lossless text compression techniques | |
CN111274950B (zh) | 特征向量数据编解码方法及服务器和终端 | |
CN112506876B (zh) | 一种支持sql查询的无损压缩查询方法 | |
Shanmugasundaram et al. | Text preprocessing using enhanced intelligent dictionary based encoding (EIDBE) | |
Mahmood et al. | Efficient compression scheme for large natural text using zipf distribution | |
CN114070471B (zh) | 一种测试数据包传输方法、装置、***、设备和介质 | |
Rincy et al. | Preprocessed text compression method for Malayalam text files | |
CN113708773A (zh) | 一种电厂数据的无损压缩、传输方法和*** | |
Mahmood et al. | An Efficient Text Database Compression Technique using 6 Bit Character Encoding by Table Look Up | |
Huang et al. | Lossless compression algorithm for multi-source sensor data research | |
CN117614459A (zh) | 一种用于超大文件分片传输过程的压缩方法及*** | |
Nishad et al. | Efficient random sampling statistical method to improve big data compression ratio and pattern matching techniques for compressed data | |
Prasetyo et al. | Comparison of Text Data Compression Using Run Length Encoding, Arithmetic Encoding, Punctured Elias Code and Goldbach Code | |
Mahmoudi et al. | Comparison of Compression Algorithms in text data for Data Mining | |
Rajon et al. | An Effective Approach for Compression of Bengali Text |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant |