`
lewis219
  • 浏览: 14218 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
文章分类
社区版块
存档分类
最新评论

用java压缩文件夹/文件

阅读更多

压缩文件夹代码:
import java.io.File;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.util.zip.ZipEntry;
import java.util.zip.ZipOutputStream;

public class CompressBook {
public CompressBook() {}

    /**//*
    * inputFileName 输入一个文件夹
    * zipFileName 输出一个压缩文件夹
    */
    public void zip(String inputFileName) throws Exception {
        String zipFileName = "d:\\test.zip"; //打包后文件名字
        System.out.println(zipFileName);
        zip(zipFileName, new File(inputFileName));
    }

    private void zip(String zipFileName, File inputFile) throws Exception {
        ZipOutputStream out = new ZipOutputStream(new FileOutputStream(zipFileName));
        zip(out, inputFile, "");
        System.out.println("zip done");
        out.close();
    }

    private void zip(ZipOutputStream out, File f, String base) throws Exception {
        if (f.isDirectory()) {
           File[] fl = f.listFiles();
           out.putNextEntry(new ZipEntry(base + "/"));
           base = base.length() == 0 ? "" : base + "/";
           for (int i = 0; i < fl.length; i++) {
           zip(out, fl[i], base + fl[i].getName());
         }
        }else {
           out.putNextEntry(new ZipEntry(base));
           FileInputStream in = new FileInputStream(f);
           int b;
           System.out.println(base);
           while ( (b = in.read()) != -1) {
            out.write(b);
         }
         in.close();
       }
    }

    public static void main(String [] temp){
        CompressBook book = new CompressBook();
        try {
           book.zip("d:\\temp");//你要压缩的文件夹
        }catch (Exception ex) {
           ex.printStackTrace();
       }
    }

}


压缩文件代码:
import java.io.BufferedInputStream;
import java.io.BufferedOutputStream;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.util.zip.ZipEntry;
import java.util.zip.ZipOutputStream;

public class ZipOutputStreamTest {
public static void main(String[] args) throws Exception
    {
      File f = new File("d:\\note.txt");
      FileInputStream fis = new FileInputStream(f);
      BufferedInputStream bis = new BufferedInputStream(fis);
      byte[] buf = new byte[1024];
      int len;
      FileOutputStream fos = new FileOutputStream("d:\\note.zip");
      BufferedOutputStream bos = new BufferedOutputStream(fos);
      ZipOutputStream zos = new ZipOutputStream(bos);//压缩包
      ZipEntry ze = new ZipEntry(f.getName());//这是压缩包名里的文件名
      zos.putNextEntry(ze);//写入新的 ZIP 文件条目并将流定位到条目数据的开始处

      while((len=bis.read(buf))!=-1)
      {
         zos.write(buf,0,len);
         zos.flush();
      }
      bis.close();
      zos.close();
    }

}
分享到:
评论

相关推荐

    java压缩文件以及文件夹

    本文将深入探讨如何使用Java来处理压缩文件,特别是针对标题提及的“java压缩文件以及文件夹”。我们将主要关注`ZipCompressor.java`这个类,它是实现文件和文件夹压缩的核心工具。 首先,让我们了解`java.util.zip...

    JAVA压缩文件夹(压缩文件)

    JAVA实现的压缩文件夹、文件的程序,使用的时候,请把代码中的package语句改成相应的包名,或者直接删除,使用默认的包名。

    运用java压缩文件夹并备份至目标文件夹

    以下是一个简单的示例,展示如何使用Java压缩一个文件夹: ```java import java.io.*; import java.nio.file.Files; import java.nio.file.Path; import java.nio.file.Paths; import java.util.zip.ZipEntry; ...

    Java代码 可以压缩文件夹到指定目录和指定名称,将文件或者文件夹中的文件转成base64格式

    在Java编程语言中,压缩文件夹到指定目录和指定名称是一项常见的任务,这通常涉及到对文件系统的操作和使用压缩库。Java提供了多种方法来实现这一功能,比如使用内置的`java.util.zip`包或者第三方库如Apache ...

    java将文件夹压缩成zip,解压zip压缩包

    本篇文章将详细探讨如何使用Java内置的IO流来实现文件夹的zip压缩以及zip压缩包的解压,无需依赖其他的第三方库如Apache Commons IO或JavaZip。 ### 文件夹压缩成ZIP 首先,我们需要理解如何将一个文件夹及其内容...

    java压缩文件夹

    java压缩文件夹,文件夹名称和文件名称支持中文

    java压缩文件代码,压缩(文件) (文件夹) (文件和文件夹混合的)超完整版

    java压缩文件的程序代码,可以压缩单个文件夹,单个标准文件,多个标准文件 多个文件夹,以及文件夹和文件混合的压缩代码

    Java实现对文件夹的加密码压缩(绝对可用)

    JAVA实现对文件夹“加密码压缩” 此资源解压后为一个文件夹,就是一个package包 (压缩后为Zip文件) 无需导入任何个人jar包 压缩后效果等同于用winrar给压缩包加密码 时间紧迫,暂时存在中文文件夹名称乱码问题 不...

    .net采用SharpZipLib压缩文件夹及文件(类及库文件)

    要使用SharpZipLib压缩文件夹和文件,首先你需要在项目中引用该库。如果你已经有一个名为"SharpZipLib.dll"的文件,可以通过以下步骤将其添加到项目中: 1. 右键点击你的项目,选择“管理NuGet程序包”。 2. 在...

    Java实现压缩解压缩文件和文件夹(附源码)

    Java实现压缩解压缩文件和文件夹(附源码) zip unzip 压缩 解压缩

    使用Java API进行tar.gz文件及文件夹压缩解压缩.docx

    ame()); tOut.putArchiveEntry(tarEntry);...通过引入该库,我们可以轻松地在 Java 程序中实现文件和文件夹的压缩与解压缩功能。在实际开发中,注意错误处理、资源管理以及安全性等方面,以确保程序的健壮性和安全性。

    java压缩文件源码--ZipUtils

    // 设置压缩文件入口entry,为被读取的文件创建压缩条目 File tempFile = new File(fileArray[i].toString()); String rootStr = file.getPath(); String entryStr = null; // entry以相对路径的...

    java 打包文件(文件夹)为 zip压缩包 java 压缩文件

    在Java编程环境中,打包...总的来说,Java提供了丰富的API来处理文件压缩,`ZIPUtil`可能是封装了这些API的实用工具,方便开发者进行文件和文件夹的打包工作。在实际应用中,可以结合具体需求进行相应的定制和优化。

    java 下载文件 压缩且删除源文件(支持文件夹与文件)

    2、指定文件夹(文件夹中必须有一个文件),程序会自动的压缩文件为 zip,然后下载删除源文件与压缩文件。 3、可以指定文件都为最后生成为zip文件下载,且删除源文件。 1、压缩文件或者目录(只是压缩不删除):...

    windows 下java调用winrar压缩文件为rar 格式

    在Windows环境下,使用Java进行程序开发时,有时我们需要对文件进行压缩操作,比如将文件压缩成RAR格式。这个过程涉及到Java的本地方法调用、文件I/O操作以及第三方库的集成。下面我们将详细探讨如何在Java中实现这...

    zip解压缩文件文件夹都可以(java)

    zip解压缩文件文件夹都可以,代码清晰,注释多。非常容易看懂

    JAVA实现对文件夹“加密码压缩”

    JAVA实现对文件夹“加密码压缩” 此资源解压后为一个文件夹,就是一个package包 (压缩后为Zip文件) 无需导入任何个人jar包 压缩后效果等同于用winrar给压缩包加密码 时间紧迫,暂时存在中文文件夹名称乱码问题...

    java解压缩文件文件夹

    本文将详细讲解如何使用Java实现文件和文件夹的压缩以及解压缩功能。 首先,Java标准库提供了`java.util.zip`包,其中包含了一些用于处理ZIP和GZIP格式的类。在“java文件解压缩”的场景下,我们主要会用到`...

    java实现多个文件压缩成rar压缩包

    本文将详细介绍如何使用 Java 实现将多个文件压缩成 RAR 压缩包,并提供了一个经过调试、可以直接使用的示例代码。 #### 技术栈与环境配置 - **开发环境**:本示例基于 Java 开发,推荐使用 JDK 1.8 或更高版本。 ...

    java后台批量下载文件并压缩成zip下载的方法

    在Java后台中,批量下载文件压缩成zip下载可以使用Java的文件输入输出流和zip压缩流来实现。首先,需要在Servlet中获取文件列表,然后使用循环将文件一个个添加到zip文件中,最后下载zip文件到本地桌面。 java批量...

Global site tag (gtag.js) - Google Analytics