Do I need to close the input stream manually after using IOUtils.toString(input) of commons-io?

StackOverflow https://stackoverflow.com/questions/20443179

  •  30-08-2022
  •  | 
  •  

Question

Commons-IO has an IOUtils.toString(inputStream) method, which can read all content from an input stream:

InputStream input = getInputStream();
String content = IOUtils.toString(input);

My question is shall I close the input stream manually after using it?

I thought IOUtils may close it since it has read all the content, but I can't find that in the source code.

Was it helpful?

Solution

The javadoc says:

Wherever possible, the methods in this class do not flush or close the stream. This is to avoid making non-portable assumptions about the streams' origin and further use. Thus the caller is still responsible for closing streams after use.

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top