利用哈夫曼编码进行对已有文件进行重新编码可以大大提高减小文件大小,减少存储空
间。但是,这要求在首先对一个现有文件进行编码行成新的文件,也就是压缩。在文件使用时,再对压缩文件进行解压缩,也就是译码,复原原有文件。试为完成此功能,写一个压缩解压缩软件。
一个完整的系统应具有以下功能:
(1)压缩准备。读取指定被压缩文件,对文件进行分析,建立哈夫曼树,并给出分析结果
(包括数据集大小,每个数据的权值,压缩前后文件的大小),在屏幕上输出。
(2)压缩。利用已建好的哈夫曼树,对文件进行编码,并将哈夫曼编码及文件编码后的数
据一起写入文件中,形成压缩文件(*.Haf)。
(3)解压缩。打开已有压缩文件(*.Haf),读取其中的哈夫曼编码,构建哈夫曼树,读取其
中的数据,进行译码后,写入文件,完成解压缩。
(4)程序使用命令行方式运行
压缩命令 :SZip A Test.Haf 1.doc
解压缩命令:SZip X Test.Haf 2.doc 或 SZip X Test.Haf
用户输入的命令不正确时,给出提示。
(5)使用面向对象的思想编程,压缩/解压缩、哈夫曼构建功能分别构建类实现。
2022-11-04 20:08:55
33.18MB
压缩解压缩
1