请教文本文件压缩率

来源:百度知道 编辑:UC知道 时间:2024/05/15 17:58:26
求助各位大哥大姐,我有两个文本文件
大小是4883KB、4589KB,
压缩后是340KB、1001KB,
即压缩率分别是6%、21%,
两个文件的行数分别是15万行和19万行
小弟实在不知是和原因,恳求高人指点,万分感谢!!!
不知道是不是因为行数才影响这么大(用的是winrar,直接【添加xxx.rar】)
两个文件的编码格式都一样,文字也都是数字中文混合,混合比例也基本一致。
magicjoker大哥,我其实也不是只是琢磨这个,我是做了个使用资源文件的程序,添加后一个资源之前压缩率在10%以下,之后是15%,所以才查了下两个文件的压缩率,使用的压缩工具是aspack这个工具对于文件的压缩率和winrar是基本一致的,所以就拿winrar来说了,郁闷至极,看来我还得试验优化文本结构了。

我认为rar不会识别文件的类型,所以任何文件都做文本处理
所以我们都看成文本

我做过测试,采用一般压缩和高级压缩,rar对文件的判断是不同的
采用一般压缩那么rar以每行压缩吧,一般在每行16字到32字之间的一个数作为阀值,具体多少我不清楚,反正每行16字和每行32字的压缩率不同,我甚至计算了除去rar的基本文件大小100字节,呵呵,对于大文件而言可以忽略
你上面我估算一下,两文件的平均每行字数为前者32~33字 后者 24-25字
这足够说明 你两个文件的每行字刚好处于我所谓的阀值左右两侧,所以一般压缩情况下rar采用了不同的分析方法,得到不同的压缩率

但是你如果采用最好压缩的话,得到的压缩率应该差不多的,我相信,因为我认为最好压缩可能不采用对行字数进行判断,而是把换行符号一起看成内容,综合压缩的
另,我发现每行字很少的采用最好压缩得到的压缩率反而比字多的高(就是值高,被压缩量少),也比同字数的一般压缩方式的文件更大(也是压缩率高,被压缩量少),说明换行在文件中占据的比率更高的缘故

我们都有点吃饱了撑着,研究这个。。。。。。O(∩_∩)O哈哈~
不过要是你是认真的一个事情,试试采用最好压缩方式吧,那是通常来说最高压缩(率值最小)的,而且最高压缩一般只和文件大小和文件流码关系(流码我理解为复杂度)