java语言编程IO流之对象序列化和ObjectInputStream与ObjectOutputStream
2015-03-21 22:35
627 查看
import java.io.*;
public class TestObjectStream { public static void main(String[] args) { T t = new T(); t.name = "jay chou"; FileOutputStream fos = null; ObjectOutputStream oos = null; FileInputStream fis = null; ObjectInputStream ois = null; try { fos= new FileOutputStream("D:\\bak\\test.dat"); oos = new ObjectOutputStream(fos); oos.writeObject(t); oos.writeDouble(0.1); oos.flush();//不加这一句,有可能出现异常java.io.EOFException fis = new FileInputStream("D:\\bak\\test.dat"); ois = new ObjectInputStream(fis); T tt = (T)ois.readObject(); double d = ois.readDouble(); System.out.println(tt); System.out.println(d); } catch (IOException e) { e.printStackTrace(); }catch (ClassNotFoundException e) { e.printStackTrace(); } finally { try { ois.close(); fis.close(); oos.close(); fos.close(); } catch (IOException e) { e.printStackTrace(); } } }}
class T implements Serializable {//必须实现该接口,才可使用户自定义类可以序列化 String name = "jay"; transient int i = 7; long t = 10L; double d = Math.random(); char c = 'a'; public String toString() { return ("name " + name + " i: " + i + " t:" + t + " d: " + d + " c: " + c); }}/*D:\java\io>javac TestObjectStream.java
D:\java\io>java TestObjectStreamname jay chou i: 7 t:10 d: 0.7328874131779102 c: a0.1
=====================================================
D:\java\io>javac TestObjectStream.java
D:\java\io>java TestObjectStreamname jay chou i: 0 t:10 d: 0.43315260736775785 c: a0.1
*/
相关文章推荐
- Java对象序列化ObjectOutputStream和ObjectInputStream示例
- Java对象序列化ObjectOutputStream和ObjectInputStream示例
- Java对象序列化ObjectOutputStream和ObjectInputStream示例
- IO流反序列化(objectInputStream)和序列化(ObjectOutputStream)连续存储对象StreamCorruptedException
- Java基础之对象的序列化(持久化)操作对象ObjectInputStream/ObjectOutputStream
- (JAVA)从零开始之--对象输入输出流ObjectInputStream、ObjectOutputStream(对象序列化与反序列化)
- Java IO--对象序列化Serializable、ObjectOutputStream、ObjectInputStream、transient
- Java的IO操作(三) - 对象的序列化、ObjectInputStream和ObjectOutputStream类
- 对象序列化 ObjectInputStream ObjectOutputStream
- Java-IO之对象输入流输出流(ObjectInputStream和ObjectOutputStream)
- java将系列化后的对象保存在文件中,及反系列化 (ObjectInputStream,ObjectOutputStream)
- java对象流ObjectInputStream、ObjectOutputStream的使用
- Java的IO操作(三) - 对象的序列化、ObjectInputStream和ObjectOutputStream类
- 11.Java基础:常见IO流----->字节流中的对象流:ObjectIOutputStream、ObjectInputStream
- 对象序列化ObjectOutputStream,ObjectInputStream
- IO流之对象流ObjectOutputStream和ObjectInputStream
- Socket同时使用ObjectInputStream和ObjectOutputStream传输序列化对象时的顺序
- ObjectInputStream 和 ObjectOutputStream(对象的序列化、持久化)
- 24-IO流-55-IO流(ObjectOutputStream-对象的序列化)
- Java IO之对象的序列化、ObjectInputStream和ObjectOutputStream类