haitao:
是啊,这不就是增量压缩才需要的--你为什么说 如果不考虑增量的话
[阅读: 434] 2005-08-22 15:57:20
我也是这么想的,格式都想好了:
.\dir1\dir2\file1.ext|crc32|filesize|yyyymmddhhnnss
只是这样2个大stringlist(一个是历史累计的文件列表;一个是目前的目录里的文件列表,都是完全列表)的比较可能比较恐怖。。。虽然可以先排序,再按2分查找比较
比较的结果是比较小:只需要加入新的增量包的文件列表
比较筛选时,一旦有一个文件需要加入,则要把它加入或替换历史累计的文件列表--这个修改后的历史累计的文件列表需要保存,以便下一次比较所用;而不是只保留比较的结果
另外,每次压缩虽然是增量的,但是都需要扫描所有的文件才能生成各个crc32数据,也是比较恐怖的
而且,计算crc时,不便按选择(*.c*;*.h*;*.o*;*.b*)和排除(*.obj;*.bak)的文件掩码进行取舍--因为此工作通过命令行交给rar来作了
findfirst/next可以使用掩码,但是不能使用多个掩码(如要*.c*;*.h*;*.o*;*.b*,不要(*.obj;*.bak)吧