为什么Scala在文件中看到更多行?

时间:2015-03-05 10:21:43

标签: scala file-io

从终端提示符运行:

$ wc data.csv
195727 15924341 201584826 data.csv

所以,195727行。 Scala怎么样?

val raw_rows: Iterator[String] = scala.io.Source.fromFile("data.csv").getLines()
println(raw_rows.length)

结果:200945

我在这面对的是什么?我希望它是一样的。事实上,如果我使用强大的csv(opencsv包装器lib),它也会读取195727行。

1 个答案:

答案 0 :(得分:3)

这可能是换行问题。来自getLines

的文件
  

返回一个返回行的迭代器(不包括换行符)。它会将\ r \ n,\ r或\ n中的任何一个视为行分隔符(最长匹配) - 如果您需要更精细的行为,则可以直接将Source#LineIterator子类化