2012-06-17 4 views
1

나는이 같은 이진 파일을 하바 :java로 바이너리 파일에서 dword를 읽는 방법은 무엇입니까?

offset | size/type | Description 
-------+-----------+----------------------------------------------------------- 
0x0000 | 28 chars | zero terminated string 
0x001c | 1 dword | fileoffset of first compressed data block (header size) 
0x0020 | 1 dword | overall size of compressed file 

내가 String로서 28 개 문자를 읽을 수 있습니다. 하지만 dword를 읽고 int로 저장하는 법을 모르겠습니다.

답변

2

DataInputStream.readFully() 및 .readInt(). 당신은 (불특정 한) 바이트 순서에 대해 뭔가를해야 할 수도 있습니다. 해당 바이트 순서를 설정 한 후 문제가 발생하면 ByteBuffer.getInt().

+0

도움 주셔서 감사합니다. ByteOrder.LITTLE_ENDIAN을 사용하여 내 문제를 해결했습니다. – user1461256

관련 문제