我有一个列表l2,我想将列表元素写入文件。我这样做:
val fw = new FileWriter("src/results.txt", true) ;
for( k <- 1 to l2.length) {
println(l2(i))
fw.write(l2(i))
i+=1
}
fw.close()
但是,它没有写任何东西。那是为什么?
答案 0 :(得分:5)
如果l2
为List(1,2,3)
,则表示您正在调用.write(int c)
班级Writer
。
这意味着十六进制二进制文件中的01 02 03
被写入文件。您可以使用hexdump -C src/results.txt
要致电.write(String str)
,请尝试fw.write(l2(i).toString)
。
请参阅https://docs.oracle.com/javase/7/docs/api/java/io/Writer.html
答案 1 :(得分:0)
为了避免for循环,你可以这样做:
import java.nio.file.Files;
import java.nio.file.Paths
val content = l2.mkString("\n").getBytes
Files.write(Paths.get("src/results.txt"), content)