java 对象输入输出流读写文件的操作实例

作者:nello 时间:2021-06-13 15:24:30 

java 对象输入输出流读写文件的操作实例

java 支持对对象的读写操作,所操作的对象必须实现Serializable接口。

实例代码:


package vo;

import java.io.Serializable;

public class Animal implements Serializable {
 private static final long serialVersionUID = 1L;
 private String name;
 private Integer weight;
 private String color;
 private String type;
 private Integer age;
 private Integer lifetime;
 public String getName() {
   return name;
 }
 public void setName(String name) {
   this.name = name;
 }
 public Integer getWeight() {
   return weight;
 }
 public void setWeight(Integer weight) {
   this.weight = weight;
 }
 public String getColor() {
   return color;
 }
 public void setColor(String color) {
   this.color = color;
 }
 public String getType() {
   return type;
 }
 public void setType(String type) {
   this.type = type;
 }
 public Integer getAge() {
   return age;
 }
 public void setAge(Integer age) {
   this.age = age;
 }
 public Integer getLifetime() {
   return lifetime;
 }
 public void setLifetime(Integer lifetime) {
   this.lifetime = lifetime;
 }
 public Animal(String name, Integer weight, String color, String type, Integer age, Integer lifetime) {
   super();
   this.name = name;
   this.weight = weight;
   this.color = color;
   this.type = type;
   this.age = age;
   this.lifetime = lifetime;
 }
 @Override
 public String toString() {
   return "Animal [name=" + name + ", weight=" + weight + ", color=" + color + ", type=" + type + ", age=" + age + ", lifetime=" + lifetime + "]";
 }

}


package objectstream;

import java.io.File;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.ObjectInputStream;
import java.io.ObjectOutputStream;

import vo.Animal;

public class TestObjectStream {
 public static void main(String[] args) {
   try {
     ObjectOutputStream oos = new ObjectOutputStream(new FileOutputStream(new File("d:/oos.dat")));
     Animal a1 = new Animal("tiger", 120, "red", "cat", 12, 20);
     Animal a2 = new Animal("eagle", 10, "gold", "bird", 6, 10);
     oos.writeObject(a1);
     oos.writeObject(a2);
     oos.flush();
     oos.close();

ObjectInputStream ois = new ObjectInputStream(new FileInputStream("d:/oos.dat"));
     Animal ra1 = (Animal) ois.readObject();
     System.out.println(ra1.toString());
     Animal ra2 = (Animal) ois.readObject();
     System.out.println(ra2.toString());
   } catch (Exception e) {
     e.printStackTrace();
   }
 }
}

输出结果:


Animal [name=tiger, weight=120, color=red, type=cat, age=12, lifetime=20]
Animal [name=eagle, weight=10, color=gold, type=bird, age=6, lifetime=10]

如有疑问请留言或者到本站社区交流讨论,本站关于java开发的文章还有很多,希望大家搜索查阅,感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!

标签:java,流
0
投稿

猜你喜欢

  • 搭建MyBatis-Plus框架并进行数据库增删改查功能

    2023-11-09 04:33:43
  • java8 统计字符串字母个数的几种方法总结(推荐)

    2023-09-25 17:37:48
  • Java网络编程之TCP通信完整代码示例

    2022-10-18 21:42:57
  • C#任务并行Parellel.For和Parallel.ForEach

    2022-04-19 22:07:58
  • java的内部类和外部类用法讲解

    2022-10-18 21:14:41
  • C# 获取指定QQ头像绘制圆形头像框GDI(Graphics)的方法

    2023-03-26 14:44:41
  • Java中计算时间差的方法

    2023-11-15 10:35:44
  • 实例解析使用Java实现基本的音频播放器的编写要点

    2023-11-29 14:54:26
  • SpringSecurity Jwt Token 自动刷新的实现

    2022-04-28 18:49:45
  • JavaFX实现简单日历效果

    2023-05-16 08:43:30
  • Android IntentFilter的匹配规则示例详解

    2022-07-11 19:12:29
  • Java实现排队论的原理

    2023-11-23 02:19:24
  • Android键盘输入语言设置默认打开myanmar缅甸语的步骤

    2021-07-01 17:15:44
  • 解析C#中的常量及如何在C#编程中定义常量

    2022-03-20 22:58:36
  • java emoji表情存储的解决方法

    2023-07-10 20:19:06
  • SpringBoot搭建多数据源的实现方法

    2022-07-02 18:57:04
  • 深入解析Java中ThreadLocal线程类的作用和用法

    2022-01-12 09:03:15
  • C# 填充Excel图表、图例背景色的实例代码

    2023-08-06 04:01:31
  • JAVA中Collections工具类sort()排序方法

    2021-10-22 04:56:29
  • android实现扑克卡片翻转

    2021-10-19 08:08:35
  • asp之家 软件编程 m.aspxhome.com