`

Java压缩技术(四) GZIP——Java原生实现

    博客分类:
  • Java
 
阅读更多

 

GZIP常常用在linxu环境下,是一种非常简单的压缩算法。在Java实现API中,它仅仅包含两个实现类:GZIPInputStream和GZIPOutputStream。
GZIPOutputStream类用于压缩
GZIPInputStream类用于解压缩

 

/**
* 获取服务器返回的数据 --------- 解压缩
* @return
* @throws Exception
*/
protected Object loadReportParam() throws Exception {
GZIPInputStream gzipInStream = new GZIPInputStream(uc.getInputStream());
ObjectInputStream objInStream = new ObjectInputStream(gzipInStream);
Object object = objInStream.readObject();
objInStream.close();
gzipInStream.close();
return object;
}

/**
* 向服务器提交数据 --------- 压缩

* @param o
* @throws Exception
*/
protected void submitReportParam(Object object) throws Exception {
GZIPOutputStream gzipOutStream = new GZIPOutputStream(uc.getOutputStream());
ObjectOutputStream objOutStream = new ObjectOutputStream(gzipOutStream);
objOutStream.writeObject(object);
objOutStream.flush();
objOutStream.close();
gzipOutStream.close();
}

 

看到网上很多文章说需要在压缩的时候要调用finish方法和flush方法。

我们实现的是客户端和服务器进行交互的功能,在压缩和解压缩后又转换成为ObjectOutputStream。

分享到:
评论

相关推荐

    java压缩技术

    ZLib ZIP 压缩——Java 原生实现 ZIP 解压缩——Java 原生实现 GZIP——Java 原生实现 GZIP 相关——浏览器解析 BZIP2——Commons 实现 TAR——Commons 实现

    Java压缩技术(五) GZIP相关——浏览器解析

    总之,Java的GZIP压缩技术在Web开发中扮演着重要角色,能够有效地减小数据传输量,提升用户体验。通过理解和应用这些知识,开发者可以构建更高效、更快速的网络服务。同时,深入源码有助于我们掌握更底层的细节,为...

    java实现gzip ajax请求gzip压缩

    Java作为后端开发的重要语言,支持处理gzip压缩,而Ajax(Asynchronous JavaScript and XML)则是前端进行异步数据交互的技术。本文将深入探讨如何在Java后端实现对gzip压缩的处理,以便于Ajax请求能够正确地进行...

    Java压缩技术(七) TAR——Commons实现

    在Java编程中,压缩技术是数据存储和传输中不可或缺的一部分。本篇主要关注的是TAR格式的压缩,它是Unix/Linux环境中广泛使用的文件打包格式。在Java中,Apache Commons Compress库提供了一个方便的API来处理TAR文件...

    Java用GZIP压缩解压文件源码

    在本文中,我们将深入探讨如何使用Java实现GZIP压缩和解压缩文件的源码。 首先,我们需要引入Java的`java.util.zip`包,这个包包含了处理GZIP和其他压缩格式所需的类。在Java中,`GZIPOutputStream`和`...

    java压缩文件以及文件夹

    首先,让我们了解`java.util.zip`包,它是Java标准库中用于处理ZIP和GZIP格式的压缩的工具。`ZipOutputStream`和`ZipEntry`是这个包中的关键类,它们用于创建和管理ZIP文件。 1. **ZipOutputStream**: - `...

    java自带压缩方式的性能比较

    在Java编程语言中,内置了多种压缩和解压缩的方式,如Gzip和Zip。这篇博客“java自带压缩方式的性能比较”可能详细分析了这两种压缩方法的效率和应用场景。通过提供的代码文件`CompressTestMain.java`、`GzipUtils....

    Java用GZIP压缩解压文件

    在Java编程环境中,GZIP是一种常用的文件压缩格式,它基于DEFLATE算法,可以有效地减少文件大小,便于存储和传输。本篇文章将深入探讨如何在Java中使用GZIP进行文件的压缩与解压缩操作。 首先,我们需要了解Java中...

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

    1. **Java压缩库**:Java标准库提供了`java.util.zip`包,它包含了多种压缩和解压缩的类,如`ZipOutputStream`、`ZipInputStream`、`GZIPOutputStream`和`GZIPInputStream`,用于处理ZIP和GZIP格式的文件。...

    JAVA源码Java用GZIP压缩解压文件JAVA源码Java用GZIP压缩解压文件

    java,JAVA源码Java用GZIP压缩解压文件JAVA源码Java用GZIP压缩解压文件

    java_gzip.rar_Compression_gzip_j2me gz_java压缩

    GZIP是一种广泛使用的数据压缩格式,其在Java中的实现基于Java IO和Java util.zip库。本篇将详细介绍Java中如何利用GZIP进行数据压缩和解压缩,并结合`java_gzip.txt`和`www.pudn.com.txt`这两个文件来展示实际操作...

    ajax+pako.js实现gzip数据压缩上传,解决post数据过长问题

    为了解决这个问题,可以采用数据压缩技术,如gzip,配合JavaScript库pako.js来压缩数据,然后再通过Ajax发送。以下将详细讲解如何利用ajax和pako.js实现gzip数据压缩上传。 首先,理解gzip压缩原理。gzip是一种广泛...

    Java用GZIP压缩解压文件.rar

    一个Java随书实例:用GZIP压缩解压文件,从源文件得到文件输入流,得到目标文件输出流,得到压缩输出流,设定读入缓冲区尺寸,弹出文件选择器,并判断是否点击了打开按钮,判断事件来自于哪个按钮,用于选择解压和...

    LZW实现Java压缩解压

    在Java编程环境中,我们可以利用LZW算法实现文件的压缩和解压缩功能。以下是对LZW算法及其Java实现的详细解释: 1. **LZW算法原理**: LZW算法基于词典编码思想,它通过查找或构建一个动态更新的词典来压缩数据。...

    java实现压缩与解压缩

    总之,Java提供了一套完整的API来处理文件的压缩和解压缩,无论是基础的ZIP和GZIP,还是通过第三方库实现的更多压缩格式。在实际开发中,了解并掌握这些工具和技巧对于优化文件存储和传输效率至关重要。

    gzip.rar_C gzip源码_c语言gzip_gzip压缩_gzip解压_poetryfem

    理解gzip的C语言实现不仅有助于深入学习文件压缩技术,还能帮助开发者提高处理二进制数据和低级别I/O操作的能力。同时,这对于那些想要自定义压缩算法或在嵌入式系统上实现轻量级压缩的开发者来说尤其有价值。通过对...

    java实现压缩和解压.doc

    本文将深入探讨如何使用Java实现这一功能,主要关注两种常用的压缩格式:ZIP和GZ。 首先,我们要引入Java的内置库`java.util.zip`,它提供了处理ZIP和GZIP格式的类。对于ZIP格式,我们主要使用`ZipOutputStream`来...

Global site tag (gtag.js) - Google Analytics