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
投稿

猜你喜欢

  • Java之SpringBean生命周期问题理解

    2022-11-16 14:47:35
  • Java毕业设计实战之平行志愿管理系统的实现

    2023-09-12 14:34:23
  • 如何使用Spring AOP预处理Controller的参数

    2022-09-11 10:01:56
  • 深入浅析Android消息机制

    2023-07-26 03:20:02
  • 解析SpringSecurity自定义登录验证成功与失败的结果处理问题

    2021-09-01 16:42:59
  • springcloud注册hostname或者ip的那些事

    2022-05-06 00:57:37
  • Java面试题冲刺第二十二天-- Nginx

    2023-11-16 13:43:48
  • 深入理解java中Arrays.sort()的用法

    2021-05-26 22:25:58
  • Java文件操作之按行读取文件和遍历目录的方法

    2023-11-24 16:58:21
  • 基于idea 的 Java中的get/set方法之优雅的写法

    2023-11-26 20:22:50
  • 基于java构造方法Vector查找元素源码分析

    2023-11-29 04:33:30
  • Android+SQLite数据库实现的生词记事本功能实例

    2023-06-18 10:41:35
  • java版微信公众平台消息接口应用示例

    2022-10-04 10:22:58
  • Java实现AOP面向切面编程的实例教程

    2023-02-20 19:32:38
  • Spring Boot用户注册验证的实现全过程记录

    2023-01-03 01:58:34
  • Java中遍历Map集合的5种方式总结

    2023-04-29 13:14:25
  • Spring MVC 处理一个请求的流程

    2021-12-19 18:39:39
  • 详解Spring Boot自动装配的方法步骤

    2023-11-18 15:02:18
  • Java中Prime算法的原理与实现详解

    2022-06-11 23:16:29
  • Java中的Kotlin 内部类原理

    2021-10-26 23:02:13
  • asp之家 软件编程 m.aspxhome.com