본문 바로가기
Backend

[Java] InputStream 활용하여 byte 읽을 때 짤림 현상 조치

by 지구 2020. 1. 28.

InputStream 활용하여 byte[] 로 데이터를 읽는데,
읽을 데이터가 너무 많아서 그런지 마지막에 [][][][][][][][][]... 이렇게 짤렸다.

InputStream is = zipFile.getInputStream(zipEntry);
byte[] dataArray = new byte[is.available()];
is.read(dataArray);

is.available() 을 썼음에도 불구하고 ㅠ

 

그래서 해결한 방법은!

InputStream is = zipFile.getInputStream(zipEntry);
byte[] dataArray = is.readAllBytes();

InputStream.readAllBytes() !!
단, 이 방법은 Java9 이상 사용가능하다.

 

참고) https://stackoverflow.com/questions/30026060/java-inputstream-to-bytebuffer
반응형

댓글