将一个流包装为多个独立流时,例如Use two ways for outputting to System.out, but why only the way in front outputs?
PrintWriter pw = new PrintWriter(System.out, true);
BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(System.out))
关闭包装流将关闭共享的基础流,并使其他包装流不起作用。
我应该如何组织代码以在何处关闭流以及如何捕获异常?
答案 0 :(得分:0)
您应该使用try-with-resources块,以便为您自动关闭每个流。
请注意,可以打开多个资源,并且所有资源都将在退出时关闭(无论是正常资源还是异常资源),并按照相反的顺序关闭每个资源,如上面的链接所述。