^EOF に達するまで、一度に 1 行ずつファイルに書き込む次のコードがあります。
import java.io.PrintWriter
import java.io.File
object WF {
def writeline(file: String)(delim: String): Unit = {
val writer = new PrintWriter(new File(file))
val line = Console.readLine(delim)
if (line != "^EOF") {
writer.write(line + "\n")
writer.flush()
}
else {
sys.exit()
}
}
}
var counter = 0
val filename = Console.readLine("Enter a file: ")
while (true) {
counter += 1
WF.writeline(filename)(counter.toString + ": ")
}
何らかの理由で、コンソールではすべて正常に動作しているように見えますが、実際にファイルを読み取ると、何も書き込まれていません! プログラムの何が問題になっていますか?