下文笔者讲述使用zipOutputStream对象对一批文件进行压缩的操作方法分享,如下所示
java压缩文件示例分享
zipOutputStream简介
zipOutputStream类图简介zipOutputStream是fileOutputStream中一种 使用此类可以将内容写入到zip包中 再调用zipOutputStream写入文件前,我们需 调用putNextEntry将文件写入 再使用write写入byte[]类型的数据 当写入完毕的时候使用colseEntry 即可结束这个文件的打包
ZipEntry简介
ZipEntry: 指压缩文件的条目(类似于java文件中的directory目录) putNextEntry方法: 开始编写新的ZIP文件条目并将流定位到条目数据的开头(换一个新的开始从头写) 当仍然有效,则关闭当前的目录 当没有为目录指定相关的压缩方法,则使用默认的压缩方法。 当没有设置时间,则默认使用当前时间(就是将条目放到zip包中)例:
java压缩文件示例分享
package com.java265.other; import java.io.File; import java.io.FileInputStream; import java.io.FileOutputStream; import java.io.IOException; import java.io.InputStream; import java.util.zip.ZipEntry; import java.util.zip.ZipOutputStream; public class TestChengFaKouJue { /** * java265.com 压缩文件示例分享 */ public static void main(String[] args) throws IOException { System.out.println("开始压缩..."); zipTest(); System.out.println("压缩完毕..."); } public static void zipTest() throws IOException { // File.separator代表了当前系统的文件分割符 // 将D盘的“异常.txt”文件压缩为D盘的test.zip文件 File file = new File("D:" + File.separator + "异常.txt"); File zipFile = new File("d:" + File.separator + "test.zip"); // 读取相关的文件 InputStream input = new FileInputStream(file); // 设置输出流 ZipOutputStream zipOut = new ZipOutputStream(new FileOutputStream(zipFile)); zipOut.putNextEntry(new ZipEntry(file.getName())); // 设置注释 zipOut.setComment("comment---www.java265.com"); int temp = 0; // 读取相关的文件 while ((temp = input.read()) != -1) { // 写入输出流中 zipOut.write(temp); } // 关闭流 input.close(); zipOut.close(); } }
版权声明
本文仅代表作者观点,不代表本站立场。
本文系作者授权发表,未经许可,不得转载。