JAva学習ノート6作成項目に対して、データの格納はこのObjectOutputStream

2962 ワード

オブジェクトシーケンス化オブジェクトシーケンス化の役割:簡単に言えば、メモリに保存されている様々なオブジェクトの状態を保存し、保存されているオブジェクトの状態を再読することができます.自分の様々な方法でObject Statesを保存することができますが、Javaはあなた自身よりもオブジェクトの状態を保存するメカニズムを提供します.それはシーケンス化です.メモリ内のオブジェクトをファイルまたはデータベースに保存する場合は、オブジェクトのシーケンス化が必要です.クラスがシーケンス化処理を必要とする場合、java.io.Serializableインタフェースを実装する必要があります.ObjectOutputStream、ObjectInputStreamは、それぞれシーケンス化および逆シーケンス化に使用されます.彼の構造方法ObjectOutputStream(OutputStream out);彼の方法は出力オブジェクトのほかに,種々の基本データ型を操作する方法がある.
import java.io.File;
import java.io.OutputStream;
import java.io.FileOutputStream;
import java.io.FileInputStream;
import java.io.InputStream;
import java.io.ObjectOutputStream;
import java.io.ObjectInputStream;
import java.io.Serializable;
class Person implements Serializable {
    public  String name;
    public int val;
    public Person(String name,int val)
    {
            this.name=name;
            this.val=val;
    }
}
public class Main {
    public static void main(String [] agrs)
    throws Exception
    {
        File a=new File("D:"+File.separator+"imput.txt");
        FileOutputStream b=new FileOutputStream(a);
        ObjectOutputStream c=new ObjectOutputStream(b);
        c.writeObject(new Person("Tom",16));
        c.close();
        ObjectInputStream cc=new ObjectInputStream(new FileInputStream(a));
        Person k=(Person)cc.readObject();
        System.out.println(k.name+" "+k.val);
        cc.close();
    }
}