`
lgtq1983
  • 浏览: 101179 次
  • 性别: Icon_minigender_1
  • 来自: 西安
社区版块
存档分类
最新评论

Java创建压缩文件

    博客分类:
  • Java
 
阅读更多
package com.pdf;

import java.io.Closeable;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.IOException;

import org.apache.tools.zip.ZipEntry;
import org.apache.tools.zip.ZipOutputStream;


/**
* java压缩文件,导入ant.jar包
*/
public class CrateZip
{

    public static void  main(String args[]) {
        String needtozipfilepath = "d:/temp/";
        String zipFileName = "d:/用户分布.zip";
        new CrateZip().createDownLoadZipFileByAntZip(needtozipfilepath, zipFileName);
    }
   
    /**
     * 打包文件
     */
    public static void createDownLoadZipFileByAntZip(String needtozipfilepath,
            String zipFileName)
    {
       
        ZipOutputStream out = null;
        FileInputStream in = null;
        FileOutputStream zipOut = null;
        ZipEntry zipEntry = null;
        try
        {
           
            //获取文件路径
            File srcPath = new File(needtozipfilepath);
           
            //获取文件个数
            int len1 = srcPath.listFiles().length;
           
            //创建文件 路径数组
            String[] filenames = new String[len1];
           
            byte[] buf = new byte[1024];
           
            //获取文件
            File[] files = srcPath.listFiles();
            zipOut = new FileOutputStream(zipFileName);
            out = new ZipOutputStream(zipOut);
            //循环添加 文件到包中
            for (int i = 0; i < filenames.length; i++)
            {
                in = new FileInputStream(files[i]);
                zipEntry = new ZipEntry(files[i].getName());
                out.setEncoding("GBK");
                out.putNextEntry(zipEntry);
                int len;
                while ((len = in.read(buf)) > 0)
                {
                    out.write(buf, 0, len);
                }
               
                out.closeEntry();
               
                in.close();
            }
           
        }
        catch (Exception e)
        {
            e.printStackTrace();
        }
        finally
        {
            closeObj(out);
            closeObj(in);
            closeObj(zipOut);
        }
       
    }
   
    /**
     * 关闭IO流
     */
    private static void closeObj(Closeable closeable)
    {
        if (null != closeable)
        {
            try
            {
                closeable.close();
            }
            catch (IOException e)
            {
                e.printStackTrace();
            }
        }
    }
   
}
分享到:
评论

相关推荐

    使用 Java 实现的压缩/解压 ZIP 文件的工具类

    在Java编程环境中,处理文件压缩和解压任务是常见的需求,尤其在数据传输或存储时。ZIP文件格式因其广泛支持和高效性而被广泛应用。本文将深入探讨如何使用Java实现ZIP文件的压缩与解压,重点讲解核心API,如`java....

    JAVA文件压缩与解压缩实践(源代码+论文)

    在Java编程语言中,文件的压缩与解压缩是常见的数据处理操作,特别是在数据传输、存储优化和备份场景中。本实践项目围绕这个主题展开,包括源代码和相关的论文,为学习者提供了深入理解和应用Java压缩库的机会。以下...

    java 中 zip压缩文件解压工具类

    本文将深入探讨如何使用Java来处理ZIP文件,特别是针对标题所提及的“java 中 zip压缩文件解压工具类”。我们将讨论核心的Java API,如`java.util.zip`包中的类,并通过一个名为`CompressFileUtils`的工具类来展示...

    Java把文件压缩成zip

    ### Java将文件压缩为ZIP的方法 #### 知识点概览 本文主要介绍如何使用Java实现文件的ZIP压缩功能,并提供了完整的代码示例。通过学习本文,你可以掌握以下几个知识点: 1. 使用`java.util.zip`包中的类进行文件...

    java压缩zip文件解决中文乱码问题

    zipEntry.setComment("压缩文件"); // 可以添加注释,同样需要指定字符集 zos.putNextEntry(zipEntry); try (BufferedInputStream bis = new BufferedInputStream(new FileInputStream(file))) { byte[] buffer...

    java文件分割压缩

    Java文件分割压缩是一种常见的操作,尤其在处理大数据或者网络传输时非常有用,因为单个大文件可能会导致处理效率低或传输困难。以下是一些相关的Java编程知识点: 1. **文件I/O操作**:在Java中,`java.io`包提供...

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

    要在Java中处理RAR格式的压缩文件,由于Java标准库不直接支持RAR格式,我们需要引入第三方库。一个常用的库是`com.igormaznitsa:nativesharp-jni`,它封装了WinRAR的API,使得Java可以调用WinRAR的功能。安装该库后...

    java压缩文件以及文件夹

    在Java编程中,压缩和解压缩文件是常见的任务,特别是在处理大量数据或传输文件时。本文将深入探讨如何使用Java来处理压缩文件,特别是针对标题提及的“java压缩文件以及文件夹”。我们将主要关注`ZipCompressor....

    java 解压,压缩linux GZ压缩文件

    Java在Linux环境下对GZ压缩文件的处理是一个常见的任务,特别是在处理大文件或者网络传输时。GZ是一种常用的文件压缩格式,它利用了gzip程序进行压缩,而在Java中,我们可以使用`java.util.zip`包中的类来实现对GZ...

    java压缩批量文件打包

    Java标准库提供了一个名为`java.util.zip`的包,该包包含了一系列类,如ZipOutputStream和GZIPOutputStream,可以用来创建ZIP和GZIP格式的压缩文件。但是,如果需要处理更复杂的任务,如批量打包,Ant则更为合适。 ...

    JAVA文件压缩与解压缩实践,java解压缩zip文件,Java源码.zip

    本实践主要关注如何使用Java来处理ZIP格式的压缩文件,以下将详细介绍相关知识点。 1. **Java档案API(Java Archive API, JAR)** Java标准库提供了一个强大的API来处理各种类型的档案文件,包括ZIP格式。`java....

    java操作压缩文件和解压文件实例代码(经测试)

    在Java编程语言中,处理压缩文件(如ZIP或GZ格式)是一项常见的任务。本示例将探讨如何使用Java API来实现文件的压缩和解压缩功能。提供的压缩包包含三个文件:ant.jar(一个用于构建工具的库)、ZipFileList.java...

    JAVA压缩文件代码

    在Java编程语言中,压缩文件是一项常见的任务,用于减少文件的存储空间,提高传输效率。HUFFMAN编码是一种数据压缩算法,它基于字符频率构建一棵最优的二叉树来进行编码,广泛应用于文本压缩。本节将详细介绍如何在...

    java多文件压缩成zip文件并实现下载

    在Java编程中,将多个文件压缩成一个ZIP文件并实现下载是一个常见的任务,尤其是在处理大量数据或文件分发时。...同时,为了提高性能和用户体验,可以考虑使用异步处理或多线程来压缩文件,特别是当处理大量大文件时。

    java获取压缩文件的名称并解压

    在Java编程中,处理压缩文件,如ZIP格式的文件,是一项常见的任务。本文将深入探讨如何使用Java来获取ZIP文件的名称以及如何高效地解压缩这些文件,特别是通过多线程来提高性能。 首先,我们需要引入Java的内置库`...

    java开发中压缩js,css文件

    这些工具不仅能够压缩文件,还能进行变量和函数名的混淆,进一步减小文件大小,但混淆可能会对代码可读性和调试带来困难,因此在生产环境使用时需谨慎。 对于JavaScript的压缩,Closure Compiler和YUI Compressor会...

    Java实现批量下载并压缩文件.pptx.pptx

    Java 实现批量下载并压缩文件是一项常见的任务,尤其在处理大量数据存储时。在这个过程中,主要涉及以下几个关键知识点: 1. **文件下载**:在Java中,文件下载通常基于网络I/O流,通过发送HTTP请求获取远程服务器...

    java ftp上传 下载 文件压缩解压

    这篇博客“java ftp上传 下载 文件压缩解压”很可能是关于如何使用Java实现FTP文件上传、下载以及文件的压缩与解压功能。下面我们将深入探讨这些知识点。 首先,FTP上传和下载是Java中常见的任务,通常通过`java...

Global site tag (gtag.js) - Google Analytics