본문 바로가기
프로그래밍 놀이터/안드로이드, Java

[android] InputStream 은 2번 읽을 수 없다.

by 돼지왕 왕돼지 2012. 11. 7.
반응형



InputStream 은 2번 읽을 수 없다.

- InputStream 을 이용해서 Cache 저장하고, 해당 Stream 을 BitmapFactory 를 이용해서 decoding 을 했더니, BitmapFactory 에서 항상 null Bitmap 을 return 하더이다. 그래서 알아보니, InputStream 은 사실 한번만 사용할 수 있다. 한번 read 로 position 이 이동된다면, 다시 원점으로 돌릴 수 없다. mark 와 reset 을 이용한 방법이 있다고 하나, 이는 추가 구현이 필요하다. 그래서 보통 copy 를 하는 방법을 사용하곤 하는데, 이 역시도 추가 library 가 필요하다. 결국 잘 생각해서 input stream 을 한번만 사용하던지 memory 상 array 에 cache 를 하던가 하는 방법을 사용해야 하겠다.



도움이 되셨다면 손가락 꾸욱~ ( 로그인 필요 x )



반응형

댓글