Java读取.zip文件为ZipInputStream,并读取压缩文件。

** 最近遇到一个需求,要调取接口获取一个zip文件流。解析zip包,读取启动的文件内容来进行业务处理。以下是处理读取zip压缩包方法,话不多说直接上代码。**

读取zip文件流,解析压缩文件

public static void main(String[] args) {
            String zipFilePath = "example.zip";

            try {
                FileInputStream fis = new FileInputStream(zipFilePath);
                ZipInputStream zis = new ZipInputStream(fis);

                ZipEntry zipEntry = zis.getNextEntry();
                while (zipEntry != null) {
                    // 如果该项是一个文件
                    if (!zipEntry.isDirectory()) {
                        String fileName = zipEntry.getName();
                        ByteArrayOutputStream bos = new ByteArrayOutputStream();

                        byte[] buffer = new byte[1024];
                        int len;
                        while ((len = zis.read(buffer)) > 0) {
                            bos.write(buffer, 0, len);
                        }
                        // 将解压出的文件流输出到控制台
                        String content = bos.toString();
                        System.out.println(fileName + ": " + content);
                    }
                    zis.closeEntry();
                    zipEntry = zis.getNextEntry();
                }

                zis.close();
                fis.close();
            } catch (IOException e) {
                e.printStackTrace();
            }
        }

你可能感兴趣的:(java)