电脑装配网

zip格式怎么生成(详细步骤,每个步骤很很详细)

 人阅读 | 作者奔跑的小羊 | 时间:2022-07-23 19:00

工作中需要把一些数据放到一个zip的压缩包中,可以使用 ZipOutputStream。ZipOutputStream可以将内容直接写入到zip包中。一般创建ZipOutputStream通常是先封装一个FileOutputStream,然后在每写入一个文件之前,需要先调用一次putNextEntry,然后使用write写入byte[]类型的数据,当写入完毕的时候使用colseEntry来结束这个文件的打包。当然也可以通过ZipOutputStream直接把数据写入压缩包内,在压缩包内构建数据。

使用

public static void filetest() throws IOException  catch (IOException e) 
    
    	//对上面封装好的文件构建一个FileInputStream
        FileInputStream fis = new FileInputStream(txtPath);
        //压缩包里创建一个空文件
        zipOutputStream.putNextEntry(new ZipEntry("Request.json"));
        //写入压缩文件
        int len;
        byte[] buffer = new byte[1024]; //字节数组大小可调节
        //读取fis字节流,转移到buffer字节数组中去,读取后fis为空
        while ((len = fis.read(buffer)) > 0) 
        byte[] b = new byte[1024];
        int a = fis.read(b);
		//关闭压缩包打包
        zipOutputStream.closeEntry();
        fis.close();
        zipOutputStream.flush();
        zipOutputStream.close();
    }
复制代码

运行之后,将会创建如下文件:

Java实现创建Zip压缩包并写入文件

 

压缩包内会产生一个叫Request.json文件,如图:

Java实现创建Zip压缩包并写入文件

 

内容与2.txt里的内容一致,为“测试test123abc”。

上述方法是:先创建2.txt,再读取2.txt的内容,导入到压缩包内形成文件。相同的逻辑,我们可以读取任意其他文件,然后把他们放入到压缩包内。

直接将内容导入到压缩包内

当然我们也可以直接将数据导入到压缩包内。实现如下:

  public static void filetest() throws IOException 
复制代码

上述是直接将String类型数据转换成byte数组,导入到压缩包内,形成两个文件:

Java实现创建Zip压缩包并写入文件

 

file文件夹里面是文件1.json,里面的内容是“测试2”,文件.json的内容则是“测试test123abc”。

最后

如果你觉得此文对你有一丁点帮助,点个赞。或者可以加入我的开发交流群:1025263163相互学习,我们会有专业的技术答疑解惑


文章标签:

本文链接:『转载请注明出处』