`

java代码实现文件打包

    博客分类:
  • java
阅读更多
网上找了一个文件打包的程序。感觉不错拿来用用^_^
package test;   
  
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 Zip {   
  
    /**   
     * 压缩文件夹   
     * @param zipPath   生成的zip文件路径   
     * @param filePath  需要压缩的文件夹路径   
     * @throws Exception   
     */  
    public void zipFolder(String zipPath, String filePath) throws Exception {   
        ZipOutputStream out = new ZipOutputStream(new FileOutputStream(zipPath));   
        File f = new File(filePath);   
        zipFiles(out, f, "");   
        out.close();   
    }      
  
    /**   
     * 压缩单一个文件   
     * @param zipPath   生成的zip文件路径   
     * @param filePath  需要压缩的文件路径   
     * @throws Exception   
     */  
    public void zipFile(String zipPath, String filePath) throws Exception {   
        File f = new File(filePath);   
        FileInputStream fis = new FileInputStream(f);   
        BufferedInputStream bis = new BufferedInputStream(fis);   
        byte[] buf = new byte[1024];   
        int len;   
        FileOutputStream fos = new FileOutputStream(zipPath);   
        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();   
  
    }   
       
    /**   
     * 递归调用,压缩文件夹和子文件夹的所有文件   
     * @param out   
     * @param f   
     * @param base   
     * @throws Exception   
     */  
    private void zipFiles(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++) {   
                zipFiles(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();   
        }   
    }   
  
    /**   
     * @param args   
     */  
    public static void main(String[] args) {   
        System.out.println("Zip File Begin");   
  
        Zip zip = new Zip();   
        String zipPath = "D:\\test.zip";   
        String filePath = "D:\\test.txt";   
        try {   
            zip.zipFile(zipPath, filePath);//压缩文件   
            //zip.zipFolder(zipPath, filePath);//压缩文件夹   
        } catch (Exception ex) {   
            ex.printStackTrace();   
        }   
        System.out.println("Zip File Done");   
    }   
  
}  
分享到:
评论

相关推荐

    Eclipse_java文件打包成exe文件详解java代码打包exe

    ### Eclipse Java 文件打包成 EXE 文件详解 #### 一、背景介绍 在软件开发领域,尤其是对于非技术用户而言,能够直接运行的应用程序(如Windows平台下的EXE文件)相较于需要特定环境才能运行的程序(如Java应用...

    将Java代码打包为exe文件(绝对可行)

    - 使用特定的工具或脚本将前面编写的本地代码与jar文件打包成一个exe文件。 #### 示例代码详解 以下是一段用于启动Java虚拟机并执行Main Class的C++示例代码: ```cpp #include #include // 其他辅助函数省略...

    zip文件打包实现代码

    Java实现zip文件打包和解压,导入即用方便好使

    JAVA文件加密打包实例

    在"JAVA文件加密打包实例"中,`encryptProject`可能包含了实现上述功能的代码。这个项目可能包含以下几个关键部分: - 密钥生成和管理模块,用于创建和存储加密密钥。 - 文件加密模块,使用AES或其他算法对单个文件...

    Java打包成可执行文件步骤详解

    - 使用`jar cvfm jartest.jar test.txt`命令将所有文件打包进`jartest.jar`文件中。这里的`c`表示创建新的jar文件;`v`表示详细模式,显示添加到jar文件中的每个文件;`f`表示指定jar文件的名字;`m`表示使用指定的...

    将Java代码打包为exe文件

    ### 将Java代码打包为exe文件 #### 一、引言 在开发Java应用程序时,通常我们会使用`.jar`文件来发布程序。然而,在非专业用户的环境中,运行`.jar`文件需要安装Java运行环境(JRE)并且了解如何通过命令行来启动...

    java压缩批量文件打包

    在Java编程环境中,批量文件打包成压缩文件是一个常见的需求,特别是在软件发布或数据传输时。Ant,一个由Apache基金会开发的构建工具,是实现这一功能的强大助手。本篇将详细介绍如何利用Java和Ant来实现批量文件的...

    JAVA代码打包工具

    Java代码打包工具是开发者在开发过程中经常会用到的一种实用软件,它可以帮助我们将编写好的Java程序集合成可执行的文件,方便部署和分发。这里我们主要讨论的是Java应用程序的打包过程,包括JAR(Java Archive)...

    java文件打包

    Java文件打包是一个重要的过程,它将Java源代码及其相关资源组织成一个可执行的格式,以便用户能够方便地运行和分发。这个过程通常涉及到多个步骤,包括编译、构建和打包。以下是对这个主题的详细说明: 1. **Java...

    java程序或项目 打包 成 jar 与exe 文件

    要将 exe 文件打包成一个安装文件,我们需要使用 Inno Setup 软件。首先,我们需要安装 Inno Setup,然后启动 Inno Setup,选择“文件”----&gt;“新建”,然后选择“下一步”。 在下一步中,我们需要配置基本信息,如...

    java 打包可执行文件

    在Java编程中,将代码打包成可执行文件是常见的需求,尤其在分发软件或部署应用程序时。这个过程通常涉及到JAR(Java Archive)文件的创建,它是一种用于收集多个类文件、相关的元数据和资源文件的容器。下面将详细...

    java压缩文件,zip打包

    应用java来压缩需要打包的文件,在系统管理中将毛哥路径或者某个文件夹压缩成zip包

    java 代码打包成exe

    ### Java 代码打包成 EXE 文件详解 #### 一、前言 在开发过程中,有时候我们需要将 Java 项目转换为 Windows 下的可执行文件(EXE 文件),这主要是为了提高程序的用户友好度,同时也方便那些没有安装 Java 运行...

    java文件打包下载

    在上述的博文链接中,虽然具体内容无法直接查看,但我们可以推测博主可能分享了一种使用Java实现文件打包下载的方法。通常,这涉及到服务器端的编程,例如使用Servlet技术。例如,我们可以创建一个名为`WjxzAction....

    几十个java游戏源代码打包,仅供学习使用。

    7. **文件I/O**:游戏可能需要保存和读取用户进度、配置文件等,因此了解Java的文件I/O操作也是很重要的。 8. **网络编程**:对于多人在线游戏,Java的Socket编程可以用来实现客户端和服务器之间的通信。 9. **...

    Eclipse_java文件打包成exe文件详解java代码打包

    Java程序通常运行在Java虚拟机(JVM)上,但为了让非Java用户也能方便地运行程序,我们可以将Java代码打包成可执行的Windows EXE文件。这个过程涉及到Java的跨平台编译和封装技术。本文将详细介绍如何使用Eclipse ...

    记录一下 Java 代码实现文件夹、文件的对比,主要包含 word、pdf、文本、图片等相关文件的对比计算,以及计算文本的相似率

    完成上述功能后,可以将所有代码打包成JAR文件,以便于在其他项目中复用。在IDEA中,可以通过"Build Artifacts"功能创建JAR包。在创建的JAR包中,可以提供一个简单的主类,通过命令行参数接收文件路径,执行对比...

    7-Zip的LZMA压缩算法之Java源代码单文件版.doc

    Java中的LZMA压缩算法是基于 Seven-Zip 的压缩工具,以Java语言实现的单文件版源代码。该源代码实现了LZMA算法的核心逻辑,包括压缩和解压缩的实现。 LZMA压缩算法概述 LZMA(Lempel-Ziv-Markov chain-Algorithm...

Global site tag (gtag.js) - Google Analytics