ファイル全体を文字列オブジェクトとしてメモリにロードしようとしていますが、アプリケーションが終了した後、メモリがガベージ コレクタに解放されません。メモリ内のファイル全体を読み取るのは悪いことだとわかっていますが、データを別のクラスに転送する場合、コード全体をメモリにロードするのではなく、単なるストリームとしてこれを行う方法を誰か助けてもらえますか?そうでない場合は、現在のコードの何が問題なのか誰か教えてください
private String processFile(FileItemStream item) throws IOException{
InputStream is=null;
try{
is=item.openStream();
return IOUtils.toString(is, "UTF-8");
}
finally {
IOUtils.closeQuietly(is);
}
}
data=processFile(item)//method call
SomeClass(data);//passing the data string to this class