【发布时间】:2011-07-06 03:52:34
【问题描述】:
有没有比这个方法更惯用的方式在Scala中打开资源并对其应用方法(直接从java翻译):
var is: FileInputStream = null
try {
is = new FileInputStream(in)
func(is)
} catch {
case e: IOException =>
println("Error: could not open file.")
println(" -> " + e)
exit(1)
} finally {
if(is) is.close()
}
【问题讨论】:
-
你可以试试“自动资源管理”库:github.com/jsuereth/scala-arm/wiki/basic-usage(我没用过)
-
您正在寻找一种称为自动资源管理的功能,这是我们可以期待的 Java 7 的少数功能之一。
标签: scala functional-programming