1将Java对象压缩到文件:
import java.io.FileOutputStream;
import java.io.File;
import java.io.ObjectOutputStream;
import java.io.IOException;
import java.util.zip.GZIPOutputStream;
public class ZipObject {
public static void main(String[] args) {
User Jlee = new User();
Jlee.setId(new Long(1));
Jlee.setUsername("JLee");
Jlee.setPassword("111");
User user = new User();
user.setId(new Long(2));
user.setUsername("用户");
user.setPassword("123");
System.out.println("压缩中...");
try {
FileOutputStream fos = new FileOutputStream(new File("user.dat"));
GZIPOutputStream gos = new GZIPOutputStream(fos);
ObjectOutputStream oos = new ObjectOutputStream(gos);
//存入两个Java对象
oos.writeInt(2) ;
//将Java对象压缩到文件
oos.writeObject(Jlee);
oos.writeObject(user);
oos.flush();
oos.close();
gos.close();
fos.close();
System.out.println("压缩中结束");
} catch (IOException e) {
System.out.println("压缩失败");
e.printStackTrace();
}
}
}
2将Java对象从文件中读取出来
import java.io.FileInputStream;
import java.io.File;
import java.io.ObjectInputStream;
import java.io.IOException;
import java.util.zip.GZIPInputStream;
public class UnzipObject {
public static void main(String[] args) {
try {
FileInputStream fis = new FileInputStream(new File("user.dat"));
GZIPInputStream gis = new GZIPInputStream(fis);
ObjectInputStream ois = new ObjectInputStream(gis);
System.out.println("解压中...");
//读取存入Java对象的数目
int count = ois.readInt() ;
for(int i=0;i<count;i++){
//从文件中读取对象
User Jlee = (User) ois.readObject();
System.out.println(Jlee);
}
ois.close();
gis.close();
fis.close();
} catch (IOException e) {
e.printStackTrace();
} catch (ClassNotFoundException e) {
e.printStackTrace();
}
}
}
用到的User类
import java.io.Serializable;
public class User implements Serializable {
private static final long serialVersionUID = 5968179219405462308L;
private Long id;
private String username;
private String password;
public User() {
}
public Long getId() {
return id;
}
public void setId(Long id) {
this.id = id;
}
public String getUsername() {
return username;
}
public void setUsername(String username) {
this.username = username;
}
public String getPassword() {
return password;
}
public void setPassword(String password) {
this.password = password;
}
public String toString() {
StringBuilder sb = new StringBuilder();
sb.append("id=").append(id);
sb.append("; username=").append(username);
sb.append("; password=").append(password);
return sb.toString();
}
}
分享到:
相关推荐
在Java编程环境中,处理RAR文件的压缩和解压是一项常见的任务。RAR是一种高效的文件压缩格式,通常用于存储和传输大量数据。本篇文章将详细介绍如何使用Java来实现RAR文件的压缩和解压操作。 首先,Java标准库并...
本文将详细讲解如何使用Java来解压和压缩tar包,同时解决在处理中文文件名时可能出现的乱码问题,主要关注`javatar-2.5.jar`库中的功能以及`TarUtil.java`类的应用。 首先,`javatar-2.5.jar`是一个专门用于处理tar...
这篇博客“java ftp上传 下载 文件压缩解压”很可能是关于如何使用Java实现FTP文件上传、下载以及文件的压缩与解压功能。下面我们将深入探讨这些知识点。 首先,FTP上传和下载是Java中常见的任务,通常通过`java...
- 首先,创建`File`对象分别代表原始的GZ压缩文件和解压后的目标文件。 - 使用`FileInputStream`打开GZ文件以读取数据,然后通过`GZIPInputStream`创建一个流,该流可以解压GZ格式的数据。 - 创建一个`...
### 实现Java文件压缩与解压 #### 一、引言 在计算机科学领域,文件压缩与解压是一项非常实用的技术。它不仅能够减少文件占用的空间,提高存储效率,还能加速文件在网络中的传输速度。Java作为一种广泛使用的编程...
本文将深入探讨如何使用Java来处理ZIP文件,特别是针对标题所提及的“java 中 zip压缩文件解压工具类”。我们将讨论核心的Java API,如`java.util.zip`包中的类,并通过一个名为`CompressFileUtils`的工具类来展示...
`java版zip压缩解压代码`提供了在命令行环境中实现这一功能的程序。这个程序主要利用了Java的内置库,尤其是`java.util.zip`包中的类,如`ZipOutputStream`和`ZipInputStream`,来实现对文件和文件夹的ZIP压缩与解压...
### 使用 Java.util.zip 包实现数据压缩与解压 在计算机科学领域,数据压缩技术是一项重要的功能,它能够帮助减少存储空间的需求以及提高网络传输效率。本文将通过一系列的示例来详细介绍如何利用 Java 中的 `java....
在Java编程环境中,处理压缩和解压缩文件是一项常见的任务,特别是在数据存储、文件传输和备份等领域。本项目专注于使用Java实现带密码保护的ZIP文件的压缩和解压功能。这是一项安全措施,允许用户对敏感文件进行...
Java的Zip压缩和解压是Java IO和Java Archive(JAR)库中的一部分,用于处理.zip格式的文件。在Java中,我们可以使用`java.util.zip`包中的类,如`ZipOutputStream`和`ZipInputStream`来实现文件或目录的压缩与解压...
在Java编程语言中,GZIP是一种常用的文件压缩格式,它基于DEFLATE算法,可以用于压缩和解压缩数据。在本文中,我们将深入探讨如何使用Java实现GZIP压缩和解压缩文件的源码。 首先,我们需要引入Java的`java.util....
在Java编程环境中,GZIP是一种常用的文件压缩格式,它基于DEFLATE算法,可以有效地减少文件大小,便于存储和传输。本篇文章将深入探讨如何在Java中使用GZIP进行文件的压缩与解压缩操作。 首先,我们需要了解Java中...
在给定的项目中,"JAVA 压缩解压AES"涉及到了Java的文件压缩和解压缩技术,以及AES加密解密的实现。通过`java.util.zip`库或Apache Commons Compress库可以实现文件夹的压缩和解压缩,而AES加密则可以通过Java ...
在这个场景中,我们关注的是如何使用Java来实现文件压缩包的上传以及在服务器上的解压缩。Java作为一种强大的编程语言,提供了丰富的库来支持这样的操作,特别是在涉及到SFTP(Secure File Transfer Protocol)时,...
在安卓平台上,使用Java语言处理文件的压缩与解压是一项常见的任务,这涉及到对文件系统的操作以及对ZIP格式的理解。本文将深入探讨如何在Android环境中使用Java实现这一功能。 首先,我们要了解ZIP文件格式。ZIP是...
在Java编程环境中,处理文件的压缩与解压是常见的任务,尤其在数据传输或存储时。本篇文章将详细探讨如何使用Java内置的IO流来实现文件夹的zip压缩以及zip压缩包的解压,无需依赖其他的第三方库如Apache Commons IO...
### Java算法:实现压缩及解压缩 #### 一、压缩功能实现 在Java中实现文件压缩功能主要依赖于`java.util.zip`包中的类。以下是对压缩代码的详细解析: ##### 1. 导入所需类库 ```java import java.io....
这个`Java zip 压缩/解压源码`的资源提供了一个简洁易用的API,使得开发者能够方便地对文件进行压缩和解压缩操作。下面我们将深入探讨Java中处理`zip`文件的相关知识。 1. **Java ZipFile类**: `java.util.zip....
根据给定的信息,我们可以深入探讨Java中文件的压缩与解压缩技术,同时解析字符串内部的工作原理,特别是关于字符串常量池的重要概念。 ### Java中文件的压缩与解压缩 #### 压缩技术概述 在Java中,可以利用标准库...
- **压缩文件和目录**:你可以通过创建一个`ZipFile`对象,并调用`addFiles()`或`addFolder()`方法来将单个文件或整个目录添加到Zip文件中。 - **解压缩文件**:使用`unzip()`方法可以解压缩整个Zip文件,或者通过...