Java_22 ZIP压缩输入/输出流
来源:互联网 发布:nginx zookeeper 区别 编辑:程序博客网 时间:2024/06/07 08:18
1.压缩文件
利用ZipOutoutStream类对象,可将文件压缩为。zip文件。ZipOutputStream类的构造函数如下:ZipOutputStream(OutputStream out);ZipOutputStream类的常用方法:putNextEntry(ZipEntry e):开始写一个新的ZipEntry,并且将流内的位置移至此entry所指数据的开头write(byte[] b,int off,int len):将字节数组写入当前ZIP条目数据finish():完成写入ZIP输出流的内容,无须关闭它所配合的OutputStreamsetComment(String comment):可设置此ZIP文件的注释文字
2.解压ZIP文件
ZipInputStream类可读取ZIP压缩格式的文件,包括对已压缩和未压缩条目的支持(entry)。ZipInputStream类的构造函数:ZipInputStream(InputStream in)ZipInputStream类的常用方法:read(byte[]b, int off,int len):读取目标b数组内off偏移量的位置,长度是len字节available():判断是否已读完目前entry所指定的目标。读完返回0;否则返回1closeEntry():关闭当前ZIP条目并定位流以读取下一个条目skip(long n):跳过当前ZIP条目中指定的字节数getNextEntry():读取下一个ZipEntry,并将流内的位置移至entry所指数据的开头createZipEntry(String name):以指定的name参数新建一个ZipEntry对象
3.压缩所有子文件夹
public class 压缩 { private void zipFile(List<String>path,File targetZipFile,String base) throws IOException{ //根据给定的targetZipFile创建文件输出流对象 FileOutputStream fos= new FileOutputStream(targetZipFile); ZipOutputStream zos = new ZipOutputStream(fos);//利用文件输出流对象创建Zip输出流对象 byte[] buffer=new byte[1024]; for(String string:path){//遍历所有要压缩的文件 File currentFile = new File(string); //利用要压缩文件的相对路径创建ZipEntry对象 ZipEntry entry = new ZipEntry(string.substring(base.length()+1,string.length())); FileInputStream fis =new FileInputStream(currentFile); zos.putNextEntry(entry); int read=0; while((read=fis.read(buffer))!=-1){//将数据写入Zip输出流中 zos.write(buffer,0,read); } zos.closeEntry();//关闭ZipEntry对象 fis.close(); } zos.close();//释放资源 fos.close(); }
阅读全文
0 0
- Java_22 ZIP压缩输入/输出流
- PHP 程序输入,输出流,压缩流及 Linux 命令:gzip,bzip2,zip,rar,tar
- ZIP压缩
- zip 压缩
- zip压缩
- Zip压缩
- 压缩ZIP
- Java IO _ Zip 压缩流
- JAVAIO之压缩流(zip,Gzip)
- java Zip压缩输入输出流问题
- Java IO流 Zip文件的压缩和好压缩
- java 解压缩zip 压缩zip
- 输出流输入流
- 输入流输出流
- 输入流&输出流
- 输入流,输出流
- Chap06: 输入/输出流
- C++输入/输出流
- hdu 2795 难度:一般
- HDU6198(矩阵快速幂)
- 你好,世界!
- java线程学习总结
- Tist和Ste
- Java_22 ZIP压缩输入/输出流
- ACM随笔
- JAVA删除重复字符串
- 【数据库】基础知识点
- 2017 ACM-ICPC 亚洲区(乌鲁木齐赛区)网络赛 C. Coconut
- EL表达式大全
- 新手笔记本—C++ 继承(public、protected、private)构造与析构
- python 判定变量是函数
- HDU 6043 规律题