private void readTheFile() throws IOException { Path path = Paths.get(this.fileName); BufferedReader reader = Files.newBufferedReader(path, this.charset); // ... reader.close(); // Noncompliant // ... Files.lines("input.txt").forEach(System.out::println); // Noncompliant: The stream needs to be closed }
这里流的关闭有问题,看似关闭了,但是在代码的执行过程中可能会出现报错之类的情况,导致流未能关闭,所以要在finally里面关闭
private void doSomething() { OutputStream stream = null; try { stream = new FileOutputStream("myfile.txt"); for (String property : propertyList) { // ... } } catch (Exception e) { // ... } finally { stream.close(); } }标签:...,stream,private,关于,关闭,注意事项,close,txt From: https://www.cnblogs.com/bulesea/p/17984086
try-with-resources也可以,但是我不会用或者说用的不熟练。