首页
会员中心
到顶部
到尾部
Java毕业设计

文件压缩解压软件设计

时间:2020/10/27 8:56:57  作者:  来源:  查看:0  评论:0
内容摘要:开发环境使用JBuilder2006进行程序开发。JBuilder是一个可视化JAVA开发工具。它是在Java2平台上开发商业应用程序、数据库、发布程序的优秀工具。它支持J2EE,所以程序员可以快速的转换企业版Java应用程序。使用此开发工具可以实现程序的可视化。总体设计系统总体...
开发环境
使用JBuilder2006进行程序开发。JBuilder是一个可视化JAVA开发工具。它是在Java2平台上开发商业应用程序、数据库、发布程序的优秀工具。它支持J2EE,所以程序员可以快速的转换企业版Java应用程序。使用此开发工具可以实现程序的可视化。

总体设计
系统总体结构设计是系统设计过程中及其重要的一步,对系统的技术层次,开发过程,功能实现及开发成本方面具有重大的影响。系统总统结构设计应尽可能的考虑人机关系,环境条件以及算法的可行性等的联系,使系统每个部分都能协调适应。
本实验论证是基于GZIP算法理论体系的,因此使用的压缩方法是参照GZIP算法的。GZIP算法理论体系主要包含三个内容:LZ77算法,Huffman算法,懒惰匹配算法。因此在设计过程中要注意如何实现这三个算法并且将其结合起来。

程序功能模块
根据设计思路,文件的压缩和解压缩是两个相反的操作,程序可分为GZIP压缩模块、UNGZIP压缩模块。

压缩模块
压缩模块的实现流程为:
(1)打开要压缩的文件,使用字典算法扫描文件统计文件使用的字符集并统计每个字符集的使用次数。
(2)根据扫描的结果构建文件字符集的Huffman树。
(3)由文件的Huffman树求字符集中各字符的编码,形成Huffman编码表。
(4)建立压缩文件。
(5)将要压缩文件的字符集大小和文件的大小写入压缩文件。将字符集的Huffman树写入压缩文件,供解压缩时使用。
(6)从文件中读取一个字符集,查Huffman编码表,得到它的Huffman编码。按位流放入压缩文件的写缓冲区。
(7)检查压缩文件的写缓冲区,如果已满一个字节,写入压缩文件,如果要压缩的文件没有达到文件的结尾,转到步骤6。
(8)关闭要压缩文件和压缩文件

解压缩模块
解压缩模块的实现流程为:
(1)打开压缩文件,读取字符集字符个数和文件的字节数。读入文件的Huffman树。
(2)建立解压缩文件。
(3)读入一个字节的编码,用Huffman树得到字符,将字符写入解压缩文件,如果编码已用完,就读取下一个字节,如此重复,直到读取压缩文件的全部编码。
(4)关闭压缩文件和解压缩文件。



相关评论
广告联系QQ:45157718 点击这里给我发消息 电话:13516821613 杭州余杭东港路118号雷恩国际科技创新园  网站技术支持:黄菊华互联网工作室 浙ICP备06056032号