I'm trying to write a list I have into a file and I'm trying to it with the foreach call, as can be done with println. this works:
list.foreach(println)
but this won't work:
val file = "whatever.txt"
val writer = new BufferedWriter(new OutputStreamWriter(new FileOutputStream(file)))
list.foreach(writer.write)
I've tried some other ways to print to a file and in all of them had no luck, what an I doing wrong?
Here's a complete example that compiles and runs. Your code was missing close()
so everything your wrote in BufferedWriter
remained in the buffer and never reached the disk.
import java.io._
val file = "whatever.txt"
val writer = new BufferedWriter(new FileWriter(file))
List("this\n","that\n","other\n").foreach(writer.write)
writer.close()
writer needs to flush to the disk, and then be closed.
writer.flush
writer.close
Or you can try another way: using PrintWriter
The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.