프로그래밍 언어/JAVA

Java에서 InputStream을 String으로 변환하는 가장 쉬운 방법

Rateye 2021. 11. 4. 10:49
728x90
반응형
질문 : Java에서 InputStream을 어떻게 읽고 String으로 변환합니까?

java.io.InputStream 객체가있는 경우 해당 객체를 어떻게 처리하고 String 생성해야합니까?

텍스트 데이터를 포함하는 InputStream String 으로 변환하고 싶다고 가정합니다. 예를 들어이를 로그 파일에 쓸 수 있습니다.

InputStream String 변환하는 가장 쉬운 방법은 무엇입니까?

public String convertStreamToString(InputStream is) {
    // ???
}
답변

이를위한 좋은 방법은 Apache commons IOUtils InputStreamStringWriter 에 복사하는 것입니다.

StringWriter writer = new StringWriter();
IOUtils.copy(inputStream, writer, encoding);
String theString = writer.toString();

또는

// NB: does not close inputStream, you'll have to use try-with-resources for that
String theString = IOUtils.toString(inputStream, encoding);

또는 Streams와 Writer를 혼합하지 않으려면 ByteArrayOutputStream 사용할 수 있습니다.

출처 : https://stackoverflow.com/questions/309424/how-do-i-read-convert-an-inputstream-into-a-string-in-java
728x90
반응형