解压zip

    public static void decompress(String srcPath, String dest) throws Exception {

        File file = new File(srcPath);

        if (!file.exists()) {

            throw new RuntimeException(srcPath + "所指文件不存在");

        }

        ZipFile zf = new ZipFile(file);

        Enumeration entries = zf.entries();

        ZipEntry entry = null;

        while (entries.hasMoreElements()) {

            entry = (ZipEntry) entries.nextElement();

            System.out.println("解压" + entry.getName());

            if (entry.isDirectory()) {

                String dirPath = dest + File.separator + entry.getName();

                File dir = new File(dirPath);

                dir.mkdirs();

            } else {

                // 表示文件

                File f = new File(dest + File.separator + entry.getName());

                if (!f.exists()) {
                    String dirs = f.getParent();

                    File parentDir = new File(dirs);

                    parentDir.mkdirs();

                }

                f.createNewFile();

                // 将压缩文件内容写入到这个文件中

                InputStream is = zf.getInputStream(entry);

                FileOutputStream fos = new FileOutputStream(f);

                int count;

                byte[] buf = new byte[8192];

                while ((count = is.read(buf)) != -1) {

                    fos.write(buf, 0, count);

                }

                is.close();

                fos.close();

            }

        }

    }
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容