package com.xiaoshan.demo3;
import java.io.*;
public class ObjectStreamExample {
public static void main(String[] args) {
// 创建一个对象
Person person = new Person("John", 30);
// 将对象序列化到文件中
String filename = "person.ser";
serializeObject(person, filename);
System.out.println("Person对象已序列化到文件:" + filename);
// 从文件中反序列化对象
Person deserializedPerson = deserializeObject(filename);
System.out.print("从文件" + filename + "中反序列化出的Person对象:");
System.out.println(deserializedPerson);
}
// 序列化对象并保存到文件
private static void serializeObject(Object object, String filename) {
try (FileOutputStream fileOutputStream = new FileOutputStream(filename);
ObjectOutputStream objectOutputStream = new ObjectOutputStream(fileOutputStream)) {
objectOutputStream.writeObject(object);
} catch (IOException e) {
e.printStackTrace();
}
}
// 从文件中反序列化对象
private static Person deserializeObject(String filename) {
Person person = null;
try (FileInputStream fileInputStream = new FileInputStream(filename);
ObjectInputStream objectInputStream = new ObjectInputStream(fileInputStream)) {
person = (Person) objectInputStream.readObject();
} catch (IOException | ClassNotFoundException e) {
e.printStackTrace();
}
return person;
}
}
// 要序列化的对象类需要实现 Serializable 接口
class Person implements Serializable {
private String name;
private int age;
public Person(String name, int age) {
this.name = name;
this.age = age;
}
public String getName() {
return name;
}
public int getAge() {
return age;
}
@Override
public String toString() {
return "Person [name=" + name + ", age=" + age + "]";
}
}
没有合适的资源?快使用搜索试试~ 我知道了~
温馨提示
该代码源码资源是一个用于讲解Java IO流的示例代码库。它包含了常见的IO类和方法的使用示例,旨在帮助理解和掌握Java中的输入输出操作。 包含: File 类、RandomAccessFile 类、字节流(文件字节流、缓冲字节流、基本数据类型字节流、打印流、对象序列化流、字节数组流)、字符流(缓冲字符流、文件字符流、转换流、格式化输出流、字符数组流) 这份代码源码资源适合以下人群: 学习Java编程语言的初学者或进阶者 对Java IO流操作感兴趣的开发人员 需要进行文件读写、网络传输等IO操作的程序员 使用场景 该代码资源可以用于教学、自学以及实际项目开发中的参考。 教学:作为教学示例演示给学生 自学:通过查看示例代码来学习和理解Java IO流的使用方式 实际项目开发:作为快速参考,可以复用其中的代码片段或直接应用于项目中 目标 此代码资源的目标是提供简单易懂的示例代码,帮助读者深入理解Java IO流的概念和使用方法。通过研究这些代码示例,读者将能够了解如何使用不同类型的IO类来进行文件读写、字符流、字节流、网络传输等各种常见的IO操作。
资源推荐
资源详情
资源评论
收起资源包目录
src.zip (13个子文件)
src
com
xiaoshan
demo4
ConvertIOExample.java 1KB
BufferedIOExample.java 1KB
PrintWriterExample.java 398B
CharArrayIOExample.java 1KB
FileIOExample.java 956B
demo2
RandomAccessFileExample.java 638B
demo1
FileExample.java 2KB
demo3
FileByteStreamExample.java 1KB
BufferedStreamExample.java 857B
ObjectStreamExample.java 2KB
PrintStreamExample.java 444B
DataStreamExample.java 1KB
ByteArrayStreamExample.java 1KB
共 13 条
- 1
资源评论
小山code
- 粉丝: 1w+
- 资源: 20
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功