由于Java 7有一个更好的方式来编写try-finally块关于Closeable资源.
现在,您可以在try关键字之后的括号内创建资源,如下所示:
try (init resources) {
...
}
在代码块完成后,它们将自动关闭.没有必要关闭最终块中的流.
一个例子:
try (
ZipFile zf = new ZipFile(zipFileName);
BufferedWriter writer = Files.newBufferedWriter(outputFilePath,charset);
) {
// Enumerate each entry
for (Enumeration entries = zf.entries(); entries.hasMoreElements();) {
// Get the entry name and write it to the output file
String newLine = System.getProperty("line.separator");
String zipEntryName = ((java.util.zip.ZipEntry)entries.nextElement()).getName() + newLine;
writer.write(zipEntryName,zipEntryName.length());
}
}
在for循环完成后,资源将被关闭!