안드로이드 개발 질문/답변
(글 수 45,052)
안녕하세요.
뭐.. 쉽게 해결될줄 알고 컴터 앞에서 이거 저거 찾아보다가 해결이 안되어서 질문 올립니다..
file에서 16비트(2byte) data를 읽거나 쓰려고 하는데요.
Java에서 기본적으로 byte단위로 streaming 하다보니 아래와 같이 입/출력은 사용했습니다.
DataInputStream dis = new DataInputStream(new BufferedInputStream(new FileInputStream(file)));
for(int i = 0; i < length; i++) {
sample[i] = dis.readShort();
}
이런 식으로 DataInputStream에서 readShort()을 사용해서 버퍼에 옮겼는데요.
sample 버펴에 들어가는 값들이 전혀 이상한 값들이 들어갑니다..
이상한건..
이 sample 버퍼를 다시 DataOutputStream으로 writeShort() 으로 파일에 적으면 카피는 잘 되더라구요...
DataInputOutputStream에서 설마 값을 decoding 하거나 하진 않을건데..
file로부터 short 단위로 buffer로 옮겨오는 방법에 대해 알려주실 분..;;
부탁드립니다.