在Scala中将整个文件读入内存的简单和规范的方法是什么? (理想的情况下,具有过字符编码控制)在Scala中读取整个文件?
最好我可以想出的是:
scala.io.Source.fromPath("file.txt").getLines.reduceLeft(_+_)
或我应该使用的Java's god-awful idioms酮,(不使用外部库,最好的)似乎是:
import java.util.Scanner
import java.io.File
new Scanner(new File("file.txt")).useDelimiter("\\Z").next()
从阅读邮件列表讨论,目前还不清楚,我认为scala.io.Source甚至被认为是规范的I/O库。我完全不明白它的预期目的是什么。
...我想要一些简单易记的东西。例如,在这些语言也很难忘记的成语......
Ruby open("file.txt").read
Ruby File.read("file.txt")
Python open("file.txt").read()
Java的心不是那么糟糕,如果你知道正确的工具。 import org.apache.commons.io.FileUtils; FileUtils.readFileToString(new File(“file.txt”,“UTF-8”) – smartnut007 2011-06-18 00:01:04
这个评论忽略了语言设计的重点,任何语言都可以使用简单的库函数来完成你想要执行的操作,作为其函数调用语法 给定一个无限且100%记忆的库,所有程序都将通过一个函数调用来实现 编程语言是好的,因为它需要更少的预制组件来实现 – 2014-02-09 05:45:04