日韩av黄I国产麻豆传媒I国产91av视频在线观看I日韩一区二区三区在线看I美女国产在线I麻豆视频国产在线观看I成人黄色短片

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 >

序列化流与反序列化流

發(fā)布時(shí)間:2025/7/14 46 豆豆
生活随笔 收集整理的這篇文章主要介紹了 序列化流与反序列化流 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

序列化是把對(duì)象特性保存到物理介質(zhì)上,反序列化是把保存在物理介質(zhì)上的對(duì)象取出還原成對(duì)象。

能被序列化的對(duì)象所屬的類必須實(shí)現(xiàn)Serializable接口。

1、對(duì)象序列化流ObjectOutputStream

構(gòu)造方法:

ObjectOutputStream(OutputStream out):創(chuàng)建寫入指定OutputStream的ObjectOutputStream

方法:

void writeObject(Object obj):將指定的對(duì)象寫入ObjectOutputStream

Person類

1 package io; 2 3 import java.io.Serializable; 4 5 public class Person implements Serializable { 6 private String name; 7 private int age; 8 9 public Person() { 10 super(); 11 } 12 13 public Person(String name, int age) { 14 super(); 15 this.name = name; 16 this.age = age; 17 } 18 19 public String getName() { 20 return name; 21 } 22 23 public void setName(String name) { 24 this.name = name; 25 } 26 27 public int getAge() { 28 return age; 29 } 30 31 public void setAge(int age) { 32 this.age = age; 33 } 34 35 @Override 36 public String toString() { 37 return "Person [name=" + name + ", age=" + age + "]"; 38 } 39 40 } 1 package io; 2 3 import java.io.FileOutputStream; 4 import java.io.IOException; 5 import java.io.ObjectOutputStream; 6 7 public class ObjectOutputStreamDemo { 8 9 public static void main(String[] args) throws IOException { 10 // 創(chuàng)建關(guān)聯(lián)數(shù)據(jù)源的字節(jié)輸出流對(duì)象 11 FileOutputStream fos = new FileOutputStream("e:\\javaIOTest\\per.txt"); 12 // 給操作文件的字節(jié)輸出流添加寫入對(duì)象功能 13 ObjectOutputStream oos = new ObjectOutputStream(fos); 14 // 調(diào)用寫入對(duì)象方法 15 oos.writeObject(new Person("alphajuns", 23)); 16 // 關(guān)閉資源 17 oos.close(); 18 } 19 20 }

2、對(duì)象反序列化流ObjectInputStream

構(gòu)造方法:

ObjectInputStream(InputStream in):創(chuàng)建從指定InputStream讀取的ObjectInputStream

方法:

readObject():從ObjectInputStream讀取對(duì)象

1 package io; 2 3 import java.io.FileInputStream; 4 import java.io.IOException; 5 import java.io.ObjectInputStream; 6 7 public class ObjectInputStreamDemo { 8 9 public static void main(String[] args) throws IOException, ClassNotFoundException { 10 // 創(chuàng)建關(guān)聯(lián)數(shù)據(jù)源的字節(jié)輸入流 11 FileInputStream fis = new FileInputStream("e:\\javaIOTest\\per.txt"); 12 // 創(chuàng)建讀取對(duì)象的反序列化流 13 ObjectInputStream ois = new ObjectInputStream(fis); 14 // 讀取對(duì)象 15 Person obj = (Person) ois.readObject(); 16 System.out.println(obj.toString()); 17 // 關(guān)閉資源 18 ois.close(); 19 } 20 21 }

?

轉(zhuǎn)載于:https://www.cnblogs.com/alphajuns/p/9943833.html

總結(jié)

以上是生活随笔為你收集整理的序列化流与反序列化流的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。