안녕하세요 지금 ObjectOutputStream을 사용해서 클래스 객체를 파일로 저장하는 작업을 하고 있습니다.
지금 문제가 같은 소스를 컴퓨터로 저장하면 저장이 잘되고 , 용량이 2KB 가 됩니다. 근데 핸드폰으로 같은 클래스 객체를 같은 소스로 실행 하면 1.33kb 가 되고 , 로드 시 EOFError가 발생 합니다 (exception error) 그리고 , 이상한점이 하나 더 있는데 핸드폰에서는 파일이 바로 생성되지 않고 핸드폰 연결을 끊었다가 다시 컴퓨터와 연결하면 그때 파일이 생성되 있습니다. 1.33kB로... 무엇이 문제 일까요?
public void SaveUserData()
{
try {
fos = new FileOutputStream(path);
oos = new ObjectOutputStream(fos);
} catch (Exception e1) {
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){}
}
}
|
좋은 하루 되세요 ^^