Java教程

使用zip压缩指定文件夹下所有文件

本文主要是介绍使用zip压缩指定文件夹下所有文件,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

依赖:

<dependency>

            <groupId>commons-io</groupId>

            <artifactId>commons-io</artifactId>

            <version>2.5</version>

</dependency>


工具类:

FileZipUtil {

    (ZipOutputStream zipFile fileString dir) Exception {
        (file.isDirectory()) {
            File[] fileArray = file.listFiles()(fileArray == ) {
                }
            zip.putNextEntry(ZipEntry(dir + ))dir = dir.length() == ? : dir + (File f : fileArray) {
                (zipfdir + f.getName())}
        } {
            BufferedInputStream bis = BufferedInputStream(FileInputStream(file))String pngName = file.getName()ZipEntry entry = ZipEntry(pngName)zip.putNextEntry(entry)zip.write(FileUtils.(file))IOUtils.(bis)zip.flush()zip.closeEntry()}
    }

    [] (String sourceFilePath) Exception{
        ByteArrayOutputStream outputStream = ByteArrayOutputStream()ZipOutputStream zip = ZipOutputStream(outputStream)File file = File(sourceFilePath)(zipfile)IOUtils.(zip)outputStream.toByteArray()}


    (HttpServletResponse responseString sourceFilePath) {
        SimpleDateFormat sdf = SimpleDateFormat()String filePrefix = sdf.format(Date())String downloadName = filePrefix + {
            OutputStream out = response.getOutputStream()[] data = (sourceFilePath)response.reset()response.addHeader()response.setHeader()response.setHeader(+ downloadName)response.addHeader(+ data.)response.setContentType()IOUtils.(dataout)out.flush()out.close()} (Exception e) {
            e.printStackTrace()}
    }
}

使用:
String path = System.getProperty("user.dir");
String filePath = path+"/file";
String pngPath = filePath+"/png";
FileZipUtil.exportZip(response, pngPath);


这篇关于使用zip压缩指定文件夹下所有文件的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!