JAVA 파일 입출력


JAVA의 객체를 파일로 저장하고 읽어들이기 위해서는 해당 객체의 클래스가 Serializable 인터페이스를 상속받은 클래스이어야 한다.

쓰기

ObjectOutputStream -> FileOutputStream -> File

읽기

File -> FileInputStream -> ObjectInputStream

객체 파일 저장 예제 코드

public void saveData() { try(ObjectOutputStream out = new ObjectOutputStream(new FileOutputStream("data.dat"))){ out.writeObject(data); // data 객체를 data.dat 파일로 저장 } catch (Exception e) { System.out.println("파일 쓰기 실패"); e.printStackTrace()패 } }

객체 파일 읽기 예제 코드

public void loadData() { File f = new File("data.dat"); // File 객체로 data.dat 파일 읽기 if(f.exists()) { // 파일이 존재하면 파일에서 데이터 읽기 try(ObjectInputStream in = new ObjectInputStream(new FileInputStream(f))){ data = (Data) in.readObject(); // Data 클래스는 Serializable 인터페이스를 상속받아야 } catch (Exception e) { System.out.println("파일 읽기 실패"); e.printStackTrace(); } } }