当我试图写一个等效的 Java try
-with-resources Kotlin 中的声明,它对我不起作用。
我尝试了以下不同的变体:
try (writer = OutputStreamWriter(r.getOutputStream())) {
// ...
}
但两者都不起作用。有谁知道应该改用什么?
显然 Kotlin 语法 doesn't include这样的构造,但也许我错过了一些东西。它为 try
block 定义语法如下:
try : "try" block catchBlock* finallyBlock?;
最佳答案
有一个use
kotlin-stdlib ( src ) 中的函数。
使用方法:
OutputStreamWriter(r.getOutputStream()).use {
// `it` is your OutputStreamWriter
it.write('a')
}
https://stackoverflow.com/questions/26969800/