3-38java的日子--序列化,反序列化
来源:互联网 发布:php是最好的语言出处 编辑:程序博客网 时间:2024/06/05 14:36
import java.io.File;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.ObjectInputStream;
import java.io.ObjectOutputStream;
import java.util.Arrays;
public class ObjectReadAndWrite {
public void xuLieHua(File Filename, Object obj1) throws IOException {
FileOutputStream fos1 = new FileOutputStream(Filename);
ObjectOutputStream oos1 = new ObjectOutputStream(fos1);
oos1.writeObject(obj1);
System.out.println("序列化文件长度: " + Filename.length());
oos1.flush();
oos1.close();
}
public Object fanXuLieHua(File Filename) throws IOException,
ClassNotFoundException {
byte[] b = new byte[(int) Filename.length()];
FileInputStream fis1 = new FileInputStream(Filename);
ObjectInputStream ois1 = new ObjectInputStream(fis1);
BufferedInputStream bis1 = new BufferedInputStream(fis1);
Object obj1 = ois1.readObject();
// ois1.read(b);
bis1.read(b);
System.out.println("读出序列化文件长度: " + b.length);
System.out.println(b.toString());
System.out.println("" + Arrays.toString(b));
ois1.close();
return obj1;
}
}
import java.io.File;
import java.io.IOException;
import java.util.Arrays;
public class TestObject {
public static void main(String[] args) throws IOException,
ClassNotFoundException {
Object rh1 = null;
String[] file = { ".//file1.txt", ".//file2.txt", ".//file3.txt",
".//file4.txt", ".//file5.txt" };
for (int i = 0; i < 5; i++) {
switch (i) {
case 0:
rh1 = new RedHead();
break;
case 1:
rh1 = new Toy();
break;
case 2:
rh1 = new Test();
break;
case 3:
rh1 = new Input();
break;
}
File f1 = new File(file[i]);
if (!f1.exists()) {
f1.createNewFile();
}
System.out.println("所要序列化的文件存储目录: " + f1.getAbsolutePath());
// RedHead rh1 = new RedHead();
ObjectReadAndWrite orw = new ObjectReadAndWrite();
orw.xuLieHua(f1, rh1);
System.out.println("序列化完成!");
System.out.println("文件反序列化:");
RedHead rh2 = (RedHead) orw.fanXuLieHua(f1);
System.out.println("文件反序列化完成!");
}
}
}
import java.io.Serializable;
public class RedHead extends SingSong implements IyayaInterface,Serializable{
String[] name=null;
int age=0;
int high=0;
int weight=0;
@Override
public void run() {
System.out.println("\"running!Great RedHead \"");
}
@Override
public void fly() {
System.out.println("\"flying!Great RedHead \"");
}
@Override
public void swim() {
System.out.println("\"swiming!Great RedHead \"");
}
@Override
public void singOtherSong(int num) {
switch(num){
case 1:System.out.println("i am sing “江南style”");break;
case 2:System.out.println("i am sing “夏天的风”");break;
case 3:System.out.println("i am sing “唯一”");break;
case 4:System.out.println("i am sing “天空之城”");break;
default :System.out.println("i am sing “抗拒命运”");break;
}
}
}
- 3-38java的日子--序列化,反序列化
- Java的序列化、反序列化
- 【Java】Java的序列化与反序列化
- serialVersionUID的作用、java的序列化/反序列化
- java 的序列化和反序列化的问题
- java序列化与反序列化
- Java序列化和反序列化
- java序列化与反序列化
- JAVA序列化及反序列化
- java序列化与反序列化
- java序列化与反序列化
- java 序列化 和反序列化
- Java序列化与反序列化
- Java序列化与反序列化
- java 序列化及反序列化
- java 序列化 与 反序列化
- java序列化与反序列化
- JAVA对象序列化,反序列化
- 0328oracle
- Android 自己动手写ListView学习其原理 1 显示第一屏Item
- 解决导入.vdi文件时报“uuid is exists”错误
- linux性能分析工具之gprof
- 5-1 带构造函数的三角形类
- 3-38java的日子--序列化,反序列化
- Uva-10905-Children’s Game
- 第五周 项目1 -带参数的构造函数,默认值函数
- 日记2013-3-28
- 观察Linux当前虚拟内存状态
- Qt基本框架使用:
- 黑马程序员_day17_基本数据类型包装类和集合框架collection和iterator
- 圆周率 我国古代数学家对圆周率方面的研究工作,成绩是突出的。三国时期的刘徽、南北朝时期的祖冲之都在这个领域取得过辉煌战绩。
- HTML5表单之Input 类型-email