基于java的zip 压缩和解压和修改压缩包

解压缩包 返回每个文件流

// 解压缩包
public static Map<String, OutputStream> unzip(InputStream inputStream) throws Exception {
   
        Map<String, OutputStream> map = new HashMap<>();
        ZipInputStream zipInputStream = new ZipInputStream(inputStream);
        ZipEntry nextEntry = zipInputStream.getNextEntry();
        while (nextEntry != null) {
   
            //新建输出字节流
            ByteArrayOutputStream byteArrayOutputStream = new ByteArrayOutputStream();
            //写入数据
            write(zipInputStream, byteArrayOutputStream);
            //放入返回数据
            map.put(nextEntry.getName(), byteArrayOutputStream);
            //下一个压缩包
            nextEntry = zipInputStream.getNextEntry();
        }
        zipInputStream.close();
        return map;
    }

解压缩包 到本地

// 解压缩包
public static void unzip(String zipPath, String unzipPath) throws Exception {
   
        ZipInputStream zipInputStream = new ZipInputStream(new FileInputStream(zipPath));
        ZipEntry nextEntry 

你可能感兴趣的:(java)