6、I/O
l Groovy提供许多有用的方法来处理I/O,包括标准的Java Reader/Writer、InputStream/OutputStream、File和URL类
l 使用闭包允许处理资源时确保正确关闭而不管是否有异常,例如下面的例子遍历文件的每一行,即使闭包中发生异常,文件也能正确关闭:
import java.io.File
new File("foo.txt").eachLine { println it }
l 使用Reader/Writer:通过闭包处理资源
import java.io.File
new File("foo.txt").withReader { reader |
while (true) {
line = reader.readLine()
...
}
}
l Groovy提供简单的方法执行命令行进程,表达式返回java.lang.Process实例,具有in/out/err流(译者:没有测试过)
process = "ls -l".execute()
process.in.eachLine { line | println line }