不,您不必。
由于Java中用于流的装饰器方法可以通过将新流或读取器附加到其他流上来构建新流或读取器,因此实现将自动对其进行处理
InputStreamReader。
如果查看其来源,
InputStreamReader.java则会看到:
private final StreamDeprer sd;public InputStreamReader(InputStream in) { ... sd = StreamDeprer.forInputStreamReader(in, this, (String)null); ...}public void close() throws IOException { sd.close();}因此,关闭操作实际上关闭了
InputStream底层的流读取器。
编辑:我想确保
StreamDeprer关闭也可以在输入流上工作,请继续关注。
签入
StreamDeprer.java
void implClose() throws IOException { if (ch != null) ch.close(); else in.close();}在调用sd的close时调用。



