`

向压缩文件中写入和读出文件内容示例

阅读更多
在java中,如何将压缩文件中的内容读取和向压缩文件中写入内容呢,下面是相关代码:

先看如何从文本文件中读入代码

private String readFile(String fileName) {
    StringBuilder sb = new StringBuilder();
    try {
        BufferedReader input = new BufferedReader(new FileReader(new File(fileName)));
    try 
{
        String  line=null;
         while ((line==input.readLine()!=null)
           {
               sb.append(line);

           } 
          } finally {
            input.close();
        }
    } catch (IOException ex) {
        // Handle exception
        return null;
    }

    return sb.toString();





  从gzip中读取内容:
  

private String readCompressedFile(String fileName) {
    try {
        GZIPInputStream gis = new GZIPInputStream(new FileInputStream(fileName));
        ByteArrayOutputStream fos = new ByteArrayOutputStream();
        byte[] buffer = new byte[1024];
        int len;
        while ((len = gis.read(buffer)) != -1) {
            fos.write(buffer, 0, len);
        }
        fos.close();
        gis.close();
        return new String(fos.toByteArray());
    } catch (IOException ex) {
        // Handle exception
        return null;
    }
}



向gzip中写内容:
   

private void writeCompressedFile(String fileName, String value) {
    try {
        InputStream is = new ByteArrayInputStream(value.getBytes());
     GZIPOutputStream gzipOS = new GZIPOutputStream(new FileOutputStream(fileName));
      byte[] buffer = new byte[1024];
        int len;
      while ((len = is.read(buffer)) != -1) {

      gzipOS.write(buffer,0,len);

    }
 gzipOS.close();
        is.close();
    } catch (IOException ex) {
        // Handle exception
    }

分享到:
评论

相关推荐

    PHP向一个压缩文件中写入多个文件

    在探讨“PHP向一个压缩文件中写入多个文件”这一主题时,我们首先需要理解基本概念,随后深入探讨实现方式及代码示例。本篇内容将围绕如何利用PHP内置库来实现多文件压缩并写入单个压缩文件的功能,特别关注`gzopen`...

    22、MapReduce使用Gzip压缩、Snappy压缩和Lzo压缩算法写文件和读取相应的文件

    本篇文章将详细探讨MapReduce如何使用Gzip、Snappy和Lzo这三种压缩算法来写入和读取文件。 1. Gzip压缩 Gzip是一种广泛使用的压缩算法,其压缩率较高,但压缩和解压缩速度相对较慢。在MapReduce中,通过设置`...

    一个c#的压缩示例文件

    本示例文件提供了一个关于如何在C#中实现文件压缩的实例。使用C#进行文件压缩通常涉及到.NET框架提供的System.IO.Compression命名空间,尤其是GZipStream和DeflateStream类,它们分别支持GZIP和DEFLATE压缩算法。...

    VB.NET使用ZipPackage实现ZIP文件压缩解压缩示例

    在解压缩方面,我们需要打开已存在的ZIP文件,然后读取其中的每个部分(PackagePart),将其内容写入到目标文件。以下是一个VB.NET解压缩的示例: ```vb.net Imports System.IO.Packaging Module UnzipDemo Sub ...

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

    - 主函数调用了`testUnGzipOutput()`方法,这意味着在示例中,代码主要用来压缩文件,而不是解压缩。 总结来说,Java通过`java.util.zip`包中的`GZIPInputStream`和`GZIPOutputStream`类提供了处理GZ文件的功能。...

    VB.net开发文件压缩解压缩实例

    要压缩单个文件,可以创建一个`FileStream`对象来读取原始文件,然后使用`ZipOutputStream`将文件内容写入ZIP流。以下是一个基本示例: ```vbnet Using fileStream As New FileStream("源文件路径", FileMode....

    C#压缩解压缩支持大文件

    根据实际需求,平衡压缩速度和文件大小。 2. **内存管理**: 对于非常大的文件,可以考虑使用内存映射文件(`MemoryMappedFile`),以减少对内存的需求。 3. **异步操作**: 使用`Stream`的异步方法(如`...

    VC++.net 压缩和解压大文件示例代码

    在这个示例中,我们将探讨如何使用流行的开源库如Zlib或者7-Zip SDK来处理大文件的压缩与解压。 Zlib是一个广泛使用的压缩库,它提供了低级别的数据压缩功能。在VC++.net中,你可以通过包含Zlib的头文件并链接其库...

    Huffman 编码图像无损压缩和解压缩 Python示例代码 哈夫曼编码

    本程序实现了利用 ...1. 从压缩文件读取编码后的位串 2. 去除填充,提取实际的编码文本 3. 对编码文本进行解码,恢复原始的像素值序列 4. 将解码得到的一维像素值序列 reshape 还原为图像 5. 将图像写入解压后的文件

    C++解压以及压缩文件

    对于创建ZIP文件,C++开发者需要实现类似的功能,即读取源文件,使用压缩算法(如deflate)处理数据,然后按照ZIP文件格式规范写入到新的ZIP文件中。ZIP文件格式包括中央目录和本地文件头,每条记录都包含文件名、...

    基于哈夫曼编码的文件压缩解压程序的C语言实现

    1. 读取压缩文件的头部,获取编码表和原始文件的总字节数。 2. 逐位读取压缩文件的二进制码,根据编码表解码得到原始字符。 3. 将解码后的字符写入新的文件,恢复原始文件。 在C语言实现中,需要注意内存管理,确保...

    Flex Air压缩和读取zip文件

    Flex Air压缩和读取zip文件是一项在开发过程中经常会遇到的任务,尤其在处理大量数据或文件传输时。这个主题主要涉及到Flex、Adobe AIR以及ZipArchive库的使用。让我们深入了解一下这些概念和技术。 首先,Flex是一...

    如何压缩多个文件\文件夹(GZipStream and C#)

    压缩整个文件夹需要递归地处理文件夹内的所有子文件夹和文件。首先,创建一个`DirectoryInfo`对象代表要压缩的根目录,然后遍历其`GetFiles()`和`GetDirectories()`方法,对每个子文件和子文件夹调用上述的压缩文件...

    压缩与解压缩的示例

    6. **文件流操作**:在进行压缩和解压缩时,需要对文件进行读取和写入操作,这涉及到文件流的概念,如FileStream和MemoryStream。 7. **算法理解**:虽然VB代码可以调用现成的压缩库,但理解压缩算法的基本原理,如...

    压缩解压文件代码示例.rar

    在IT行业中,压缩和解压缩文件是常见的操作,特别是在数据传输、存储优化和软件分发等领域。本示例聚焦于VC++(Visual C++)环境下如何实现这一功能。VC++是一种广泛使用的C++编程环境,它提供了丰富的库支持,包括...

    C# 如何 切分组合大尺寸文件 使用WinRAR压缩文件 将文件转换成网页等等...,有8个类似的示例啊 (源码)

    - 文件切分:当面对大尺寸文件时,可以使用`FileStream`和`BinaryReader`或`BinaryWriter`类将文件读取或写入到多个小文件中。通过设定每个部分的大小,可以控制切分的粒度。 - 文件组合:相反,使用`FileStream`...

    C#实现文件的压缩和解压缩

    通过以上内容,我们了解了如何在C#中利用SharpZipLib库来实现BZIP2和GZIP的文件压缩与解压缩。在实际开发中,根据性能和压缩率的需求,可以选择适合的压缩算法。同时,确保正确处理异常和错误,以确保文件操作的可靠...

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

    在Java编程中,处理文件压缩和解压是常见的任务,特别是使用ZIP格式。然而,当涉及到包含中文字符的文件或目录时,可能会遇到乱码问题。这个问题主要源于字符编码的不一致,通常需要正确设置字符集来确保中文字符在...

    Spring Boot中使用Java实现文件批量下载与压缩功能

    这里需要注意的是,上述示例中的URL均为示例数据,实际使用时需要替换为有效的文件URL。同时,目标路径也需要根据实际情况调整,如这里的“firstLayer”等。 ##### 2.2 设置响应头 在处理文件下载请求时,需要设置...

    C#压缩和解压缩文件

    若要压缩整个目录,你需要遍历目录中的所有文件和子目录,并将它们添加到ZIP流中。可以扩展`AddFileToZip`方法来处理目录结构。 ### 解压缩文件 1. **读取ZIP文件** 解压缩ZIP文件时,需要创建一个`...

Global site tag (gtag.js) - Google Analytics