为什么 Scala 会在文件中看到更多行?
Why does Scala see more lines in a file?
运行 这来自终端提示:
$ 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 包装器库),它也会读取 195727 行。
可能是换行问题。来自 getLines
的文档
Returns an iterator who returns lines (NOT including newline character(s)). It will treat any of \r\n, \r, or \n as a line separator (longest match) - if you need more refined behavior you can subclass Source#LineIterator directly
运行 这来自终端提示:
$ 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 包装器库),它也会读取 195727 行。
可能是换行问题。来自 getLines
Returns an iterator who returns lines (NOT including newline character(s)). It will treat any of \r\n, \r, or \n as a line separator (longest match) - if you need more refined behavior you can subclass Source#LineIterator directly