Java 객체를 파일에 저장/파일에서 읽는 방법
Java 언어는 Serializable 인터페이스를 구현한 클래스의 객체만 파일에 저장할 수 있으며 다음과 같은 방법을 사용할 수 있습니다.
public static void writeObjectToFile(Object obj)
{
File file =new File("test.dat");
FileOutputStream out;
try {
out = new FileOutputStream(file);
ObjectOutputStream objOut=new ObjectOutputStream(out);
objOut.writeObject(obj);
objOut.flush();
objOut.close();
System.out.println("write object success!");
} catch (IOException e) {
System.out.println("write object failed");
e.printStackTrace();
}
}
매개 변수obj는 반드시 Serializable 인터페이스를 실현해야 합니다. 그렇지 않으면java를 던집니다.io.NotSerializableException 예외입니다.또한 만약에 쓴 대상이 하나의 용기, 예를 들어 List, Map이라면 용기의 모든 요소가 Serializable 인터페이스를 실현했음을 보증해야 한다.예를 들어 다음 방법에 따라 Hashmap을 설명하고 writeObjectToFile 방법을 호출하면 이상이 발생합니다.그러나 Hashmap
Object obj=new Object();
//failed,the object in map does not implement Serializable interface
HashMap<String, Object> objMap=new HashMap<String,Object>();
objMap.put("test", obj);
writeObjectToFile(objMap);
2. 파일에서 객체 읽기다음과 같은 방법으로 파일에서 객체를 읽을 수 있습니다.
public static Object readObjectFromFile()
{
Object temp=null;
File file =new File("test.dat");
FileInputStream in;
try {
in = new FileInputStream(file);
ObjectInputStream objIn=new ObjectInputStream(in);
temp=objIn.readObject();
objIn.close();
System.out.println("read object success!");
} catch (IOException e) {
System.out.println("read object failed");
e.printStackTrace();
} catch (ClassNotFoundException e) {
e.printStackTrace();
}
return temp;
}
객체를 읽은 후 객체의 실제 유형에 따라 변환하면 됩니다.이상의 자바는 대상을 파일에 저장하고/파일에서 대상을 읽는 방법은 여러분에게 모든 내용을 공유하는 것입니다. 참고하시고 저희를 많이 사랑해 주시기 바랍니다.
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
38. Java의 Leetcode 솔루션텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.