新建了ZipEntry后,要往里面写入数据嘛
把这一段:- zipOut.putNextEntry(new ZipEntry(f[i].getName())) ;
复制代码 改成如下代码:- zipOut.putNextEntry(new ZipEntry(f[i].getName()));
- FileInputStream fis=new FileInputStream(f[i]);
- byte[] buf=new byte[1024];
- int len=0;
- while((len=fis.read(buf))!=-1){
- zipOut.write(buf,0,len);
- }
- zipOut.closeEntry();
复制代码 还有个小问题:
既然要递归压缩目录下的所有文件,
ZipOutputStream应该在里面创建,
每个文件压缩后应该放到不同的压缩文件里
|