0

Apache Commons メソッドを使用します。IOUtils.toString(InputStream, "UTF-8");

渡されたものを手動で閉じる必要がありInputStreamますか、それともライブラリはそれを気にするのに十分スマートですか?

4

1 に答える 1

1

@Puce と @Ratshiḓaho Wayne が指摘したように、toString() メソッドに渡す入力ストリームが API によって閉じられるとは javadoc に何もありません。

バイト ストリームを文字列に変換するために渡されたストリームを API が閉じることは意味がありません。アプリケーションがreset.

参考までにドキュメントはこちらです。

public static String toString(InputStream input,
              Charset encoding)
                       throws IOException 

指定された文字エンコーディングを使用して、InputStream の内容を String として取得します。

このメソッドは入力を内部的にバッファリングするため、BufferedInputStream を使用する必要はありません。

于 2014-09-25T13:15:17.323 に答える