`
panshaobinSB
  • 浏览: 203851 次
  • 性别: Icon_minigender_1
  • 来自: 广州
社区版块
存档分类
最新评论

java解压gz文件,这个是在linux下实验过的

 
阅读更多
下面是网上的代码
http://www.iteye.com/topic/894879
import java.io.FileInputStream; 
import java.io.FileNotFoundException; 
import java.io.FileOutputStream; 
import java.io.IOException; 
import java.util.zip.GZIPOutputStream; 


public class CompressFileGZIP { 
private static void doCompressFile(String inFileName) { 
  
        try { 
        
            System.out.println("Creating the GZIP output stream."); 
            String outFileName = inFileName + ".gz"; 
            GZIPOutputStream out = null; 
            try { 
                out = new GZIPOutputStream(new FileOutputStream(outFileName)); 
            } catch(FileNotFoundException e) { 
                System.err.println("Could not create file: " + outFileName); 
                System.exit(1); 
            } 
                    
  
            System.out.println("Opening the input file."); 
            FileInputStream in = null; 
            try { 
                in = new FileInputStream(inFileName); 
            } catch (FileNotFoundException e) { 
            System.err.println("File not found. " + inFileName); 
                System.exit(1); 
            } 

            System.out.println("Transfering bytes from input file to GZIP Format."); 
            byte[] buf = new byte[1024]; 
            int len; 
            while((len = in.read(buf)) > 0) { 
                out.write(buf, 0, len); 
            } 
            in.close(); 

            System.out.println("Completing the GZIP file"); 
            out.finish(); 
            out.close(); 
        
        } catch (IOException e) { 
            e.printStackTrace(); 
            System.exit(1); 
        } 

    } 

    /** 
     * Sole entry point to the class and application. 
     * @param args Array of String arguments. 
     */ 
    public static void main(String[] args) { 
    String str="E:\\AUTORUN.INF"; 
        
            doCompressFile(str); 
        
  
             
    } 
} 










---------------------------------------------------------------------------------------------------------------------------




import java.util.zip.GZIPInputStream; 
import java.io.FileOutputStream; 
import java.io.FileInputStream; 
import java.io.FileNotFoundException; 
import java.io.IOException; 

public class UncompressFileGZIP { 

    /** 
     * Uncompress the incoming file. 
     * @param inFileName Name of the file to be uncompressed 
     */ 
    private static void doUncompressFile(String inFileName) { 

        try { 

            if (!getExtension(inFileName).equalsIgnoreCase("gz")) { 
                System.err.println("File name must have extension of \".gz\""); 
                System.exit(1); 
            } 

            System.out.println("Opening the compressed file."); 
            GZIPInputStream in = null; 
            try { 
                in = new GZIPInputStream(new FileInputStream(inFileName)); 
            } catch(FileNotFoundException e) { 
                System.err.println("File not found. " + inFileName); 
                System.exit(1); 
            } 

            System.out.println("Open the output file."); 
            String outFileName = getFileName(inFileName); 
            FileOutputStream out = null; 
           try { 
                out = new FileOutputStream(outFileName); 
            } catch (FileNotFoundException e) { 
                System.err.println("Could not write to file. " + outFileName); 
                System.exit(1); 
            } 

            System.out.println("Transfering bytes from compressed file to the output file."); 
            byte[] buf = new byte[1024]; 
            int len; 
            while((len = in.read(buf)) > 0) { 
                out.write(buf, 0, len); 
            } 

            System.out.println("Closing the file and stream"); 
            in.close(); 
            out.close(); 
        
        } catch (IOException e) { 
            e.printStackTrace(); 
            System.exit(1); 
        } 

    } 

    /** 
     * Used to extract and return the extension of a given file. 
     * @param f Incoming file to get the extension of 
     * @return <code>String</code> representing the extension of the incoming 
     *         file. 
     */ 
    public static String getExtension(String f) { 
        String ext = ""; 
        int i = f.lastIndexOf('.'); 

        if (i > 0 &&  i < f.length() - 1) { 
            ext = f.substring(i+1); 
        }      
        return ext; 
    } 

    /** 
     * Used to extract the filename without its extension. 
     * @param f Incoming file to get the filename 
     * @return <code>String</code> representing the filename without its 
     *         extension. 
     */ 
    public static String getFileName(String f) { 
        String fname = ""; 
        int i = f.lastIndexOf('.'); 

        if (i > 0 &&  i < f.length() - 1) { 
            fname = f.substring(0,i); 
        }      
        return fname; 
    } 

    /** 
     * Sole entry point to the class and application. 
     * @param args Array of String arguments. 
     */ 
    public static void main(String[] args) { 
    
       
            doUncompressFile("E:\\AUTORUN.INF.gz"); 
       

    } 

} 
分享到:
评论
1 楼 郭清明 2014-12-21  
哥们,如果是解压、压缩多个文件呢 ?
我现在就有这个问题,能否帮下忙

相关推荐

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

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

    java解压linux上的压缩文件gz格式文件

    本文将详细介绍如何使用 Java 在 Linux 系统上解压 `.gz` 格式的压缩文件,并探讨多种解压方法。 #### 基本解压方法 首先,我们来看一个基本的例子,该例子展示了如何使用 `GZIPInputStream` 类来读取并解压 `.gz`...

    java压缩+解压GZ(Linux)文件.rar

    在IT行业中,尤其是在Java编程领域,压缩和解压缩文件是一项常见的任务。本篇文章将深入探讨如何使用Java在Linux环境下处理GZ(GNU Zip)格式的压缩文件。GZ是一种广泛用于Linux和Unix系统的文件压缩格式,它基于...

    解压gz工具类

    在IT行业中,压缩文件是常见的数据传输和存储方式,尤其是以.gz格式的压缩文件,它在Linux和Unix系统中广泛使用。`.gz`是GNU Zip的缩写,是一种高效的文件压缩格式,通常用于单个文件的压缩。在处理.gz文件时,我们...

    jdk-7u80-linux-x64.tar.gz解压,ORACLE JDK1.7 linux x64.zip

    接下来,"ORACLE JDK1.7 linux x64.zip"是另一个ZIP压缩文件,它是Windows常用的压缩格式,但在Linux下也可以通过`unzip`命令解压: ```bash unzip ORACLE JDK1.7 linux x64.zip ``` 尽管描述中同时提到了这两个...

    eclipse-java-2023-09-R-linux-gtk-x86-64.tar.gz

    这个文件采用tar.gz格式进行压缩,这是一种在Linux和Unix系统中常见的归档和压缩方法。 Eclipse IDE是一款开源的集成开发环境(Integrated Development Environment),主要用于编写Java应用程序。它以其强大的代码...

    jdk-8u401-linux-x64.tar.gz.7z

    描述中提到“7z文件包需要解压哦:jdk-8u401-linux-x64.tar.gz”,这提示我们需要先用7-Zip软件或者在Linux终端下使用7z命令来解压这个7z文件。解压后会得到一个名为“jdk-8u401-linux-x64.tar.gz”的tarball(tar...

    eclipse-java-2020-06-R-linux-gtk-x86_64.tar.gz

    总的来说,这个“eclipse-java-2020-06-R-linux-gtk-x86_64.tar.gz”压缩包提供了一个强大的Java开发环境,适用于64位Linux系统,尤其是Ubuntu,用户可以在虚拟机内体验这一专业级的开发工具。通过解压和配置,...

    eclipse-java-linux-gtk-x86_64.tar.gz

    标题中的“eclipse-java-linux-gtk-x86_64.tar.gz”指示这是一个为Linux操作系统设计的64位版本Eclipse集成开发环境(IDE),基于GTK+图形库。Eclipse是一款广泛使用的开源软件,主要用于Java编程,但也支持其他语言...

    linux下java安装包

    本文将详细介绍如何在Linux环境下安装Java 8版本,具体以标题和描述中的"linux下java安装包"和标签"java8"为线索。 首先,Java 8是Oracle公司发布的Java平台标准版(Java SE)的一个重要版本,它引入了多项新特性,...

    Java JDK11.0.22.tar.gz下载(Linux)

    这个版本在Java SE(标准版)的框架下提供了开发和运行Java应用程序所需的全套工具。JDK(Java Development Kit)是Java程序员的核心工具,包含了JRE(Java Runtime Environment),编译器,调试器,以及其他用于...

    jdk-8u181-linux-x64.tar.gz

    这个压缩包文件是一个归档文件,用于在Linux环境下部署Java开发环境。JDK是Java编程语言的核心组件,包含了编译器、调试器、文档生成工具以及其他开发工具,使得开发者可以在本地环境中编写、测试和运行Java程序。 ...

    Java1.8 Linux环境下 x86、x64 以及 arm架构的安装包 RPM格式 和 tar.gz格式 共6个文件

    在这个分享中,提供了适用于Linux环境下的Java 1.8安装包,覆盖了x86、x64和arm三种不同的处理器架构,同时提供了两种安装格式:RPM(Red Hat Package Manager)格式和tar.gz压缩格式。这些文件的详细信息如下: 1....

    eclipse-java-2022-03-R-linux-gtk-x86_64.tar.gz

    这个压缩包采用的是tar.gz格式,是Linux系统中常用的归档和压缩工具组合,它首先使用tar进行文件打包,然后用gzip进行压缩,以节省存储空间。 描述中提到的“适用于Linux x86_64”,意味着这个Eclipse版本是为64位...

    eclipse-java-2019-09-R-linux-gtk-x86_64.tar.gz

    标题中的“eclipse-java-2019-09-R-linux-gtk-x86_64.tar.gz”指的是Eclipse IDE的一个特定版本,用于Java开发,并且是为Linux操作系统(GTK+...解压并安装后,Java开发者可以在Linux环境下使用Eclipse进行高效开发。

    linux mysql-connector-java-5.1.36.tar.gz

    这个`mysql-connector-java-5.1.36.tar.gz`文件是一个针对Linux操作系统的压缩包,包含了运行在Linux环境下的MySQL Connector/J的具体版本5.1.36。 MySQL Connector/J遵循JDBC(Java Database Connectivity)标准,...

    linux环境java8安装包jdk-8u212-linux-x64

    通常,你可以从Oracle官方网站下载,但在此情况下,你已经拥有一个名为"linux环境java8安装包jdk-8u212-linux-x64"的压缩文件。 安装步骤如下: 1. **解压文件**:首先,将压缩包解压到你的系统上,通常是在 `/opt...

    linux安装 java 8版

    在Linux系统中安装Java 8版本是一个常见的任务,对于开发者来说尤其重要,因为Java是许多后端服务和应用程序的基础。本篇文章将详细讲解如何在Linux环境下安装Java Development Kit(JDK)8,以满足开发和运行Java...

    eclipse-java-2022-06-R-linux-gtk-x86_64.tar.gz

    描述中的“eclipse-java-2022-06-R-linux-gtk-x86_64.tar.gz 适用于Linux x86_64”进一步确认了这个软件包是为64位Linux系统准备的。".tar.gz"文件格式是一种常见的Linux归档文件,它使用tar命令将多个文件和目录...

    java zip rar(区分有无密码的RAR文件) gz ftp工具类

    总结起来,这个项目提供了Java环境下的压缩和解压缩功能,包括ZIP、RAR(带密码)和GZ格式,以及FTP文件传输的实用工具类。开发者可以轻松地集成这些功能到他们的项目中,提高文件处理的便捷性。

Global site tag (gtag.js) - Google Analytics