【发布时间】:2014-01-22 22:45:00
【问题描述】:
我现在正在学习Scala,这是我的代码 sn-p 来计算文本文件中的行数。
//returns line number of a file
def getLineNumber(fileName: String): Integer = {
val src = io.Source.fromFile(fileName)
try {
src.getLines.size
} catch {
case error: FileNotFoundException => -1
case error: Exception => -1
}
finally {
src.close()
}
}
我正在使用 Programming in Scala book 中解释的 Source.fromFile 方法。这是问题所在:如果我的文本文件是这样的:
baris
ayse
deneme
我得到了正确的结果 6。如果我在单词 deneme 之后按回车键,我仍然得到数字 6,但是在这种情况下我期望 7。如果我在按回车后按空格,我会得到 7,这又是正确的。这是 Scala 标准库中的错误,还是更可能是我遗漏了什么?
最后,我的基本主要方法在这里如果有帮助:
def main(args: Array[String]): Unit = {
println(getLineNumber("C:\\Users\\baris\\Desktop\\bar.txt"))
}
【问题讨论】:
-
检查文本编辑器的设置。看起来不像是 Scala 做的。
标签: scala file-io newline standard-library