안녕하세요 지금 ObjectOutputStream을 사용해서 클래스 객체를 파일로 저장하는 작업을 하고 있습니다.
지금 문제가 같은 소스를 컴퓨터로 저장하면 저장이 잘되고 , 용량이 2KB 가 됩니다. 근데 핸드폰으로 같은 클래스 객체를 같은 소스로 실행 하면 1.33kb 가 되고 , 로드 시 EOFError가 발생 합니다 (exception error) 그리고 , 이상한점이 하나 더 있는데 핸드폰에서는 파일이 바로 생성되지 않고 핸드폰 연결을 끊었다가 다시 컴퓨터와 연결하면 그때 파일이 생성되 있습니다. 1.33kB로... 무엇이 문제 일까요?
public void SaveUserData()
{
try {
fos = new FileOutputStream(path);
oos = new ObjectOutputStream(fos);
} catch (Exception e1) {
// TODO 자동 생성된 catch 블록
e1.printStackTrace();
}
int ret = 0;
try {
nvUserDataT as = new nvUserDataT();
as.SETUP.Unit.Speed = 2;
oos.writeObject(as);
} catch (Exception e) {
System.out.println(e.toString());
e.printStackTrace();
}
finally {
if( fos != null) try{fos.close();}catch(IOException e){}
if( oos != null) try{oos.close();}catch(IOException e){}
}
}
좋은 하루 되세요 ^^