kotlin 从控制台读取文件

gcxthw6b  于 2022-12-04  发布在  Kotlin
关注(0)|答案(1)|浏览(113)

我在koltin做一些有竞争力的编程。大部分时间我使用控制台的输入,但有时我想使用文件。有没有办法让readln()从文件工作?目标是避免写代码做同样的事情。
从这里:Reading console input in Kotlin我尝试

fun <T : Closeable, R> T.useWith(block: T.() -> R): R = use { with(it, block) }

File("a.in").bufferedReader().useWith {
    File("a.out").printWriter().useWith {
        val (a, b) = readLine()!!.split(' ').map(String::toInt)
        println(a + b)
    }
}

Scanner(File("b.in")).useWith {
    PrintWriter("b.out").useWith {
        val a = nextInt()
        val b = nextInt()
        println(a + b)
    }
}

但我没能让它工作。
谢谢你的回答。

a64a0gku

a64a0gku1#

感谢@aSemy评论我让它工作:

val seq = File("./src/ts1_input.txt").readLines().listIterator() 

fun readString() = seq.next() // readln()

相关问题