[java] ObjectInputStream / ObjectOutputStream

[java] ObjectInputStream / ObjectOutputStream

객체 입출력 보조 스트림

객체단위를 파일에 출력하고자 할 때 필요한 보조스트림

문자 입력/출력 스트림에는 사용할 수 없다.

ObjectInputStream ois = new ObjectInputStream(바이트입력스트림);

ObjectInputStream oos = new ObjectOutputStream(바이트출력스트림);

oos.writeObject(객체); //객체 출력

객체타입 변수 = (객체타입) ois.readObject(); //객체 입력

직렬화가 가능한 클래스(Serializable)

자바는 Serializable 인터페이스를 구현한 클래스만을 직렬화할 수 있도록 제한

; 직렬화란 클래스의 모든 필드들을 바이트스트림을 통해 출력시키기위한 일직렬로 byte화한 모양새이다.

ObjectOutputStream을 이용해서 출력한 파일을 열어보면 다깨져서 나온다.

writeObject()메소드를 사용해서 출력할 해당 클래스에 Serializable을 구현해야 깨지지 않고 출력 가능하다.

from http://jjorong-e.tistory.com/71 by ccl(A) rewrite - 2021-11-21 16:28:01