今天下午做了一个将多个PDF文件打成一个压缩包的功能,绞尽脑汁,终于在本地测试时,可以成功实现这一功能,等待明天的实际测试。
下面简述一下代码逻辑,也让自己复习一下,加深印象。
1.获取文件列表以及压缩文件名,将这两个值作为参数,传到压缩方法中,方法返回一个布尔值,用来判断是否压缩成功。
2.进入压缩方法中,开始编写文件压缩逻辑。
3.根据压缩文件名,创建一个文件对象,判断该文件是否存在,不在则新建一个压缩文件。
4.根据压缩文件名,创建一个文件输出流,再创建zip数据输出流对象。
5.循环待压缩的文件,创建文件对象,判断文件是否存在,不在则压缩失败。
6.根据文件名,创建文件输入流,获取当前文件不带路径的文件名称。使用文件名称,创建指向压缩原始文件的入口。
7.使用输入流,不断读取文件信息,再使用输出流,向压缩文件中写入数据,直到输入流读取到末尾。
8.最后,关闭创建的流对象,返回压缩结果。
可能我这样讲起来,代码逻辑不是很复杂,但是真的写起来,如果没有一个整体的思路,很容易就会卡壳。
今天将自己写的开发方案交给领导查阅了,实话说,我知道里面还有一些细节性的东西,我并没有弄清楚。
这个需求给我造成的压力,比我领第一个需求时还大,因为时间跨度有点大,从领到这个需求,已经快有1个月,还没开发完成。
现在我能做的,就是一步一个脚印,争取早日开发完成这个项目。
网友评论