363 Stimmen

Ganze Datei in Scala lesen?

Was ist eine einfache und kanonische Weg, um eine ganze Datei in den Speicher in Scala zu lesen? (Idealerweise mit Kontrolle über die Zeichenkodierung.)

Das Beste, was mir einfällt, ist:

scala.io.Source.fromPath("file.txt").getLines.reduceLeft(_+_)

oder soll ich eine der folgenden Methoden verwenden Javas grässliche Idiome , von denen die beste (ohne Verwendung einer externen Bibliothek) zu sein scheint:

import java.util.Scanner
import java.io.File
new Scanner(new File("file.txt")).useDelimiter("\\Z").next()

Nach dem Lesen von Mailinglisten-Diskussionen ist mir nicht klar, ob scala.io.Source überhaupt die kanonische I/O-Bibliothek sein soll. Ich verstehe nicht, was genau ihr Zweck ist.

... Ich hätte gerne etwas Einfaches, das man sich leicht merken kann. In diesen Sprachen ist es zum Beispiel sehr schwer, die Redewendung ... zu vergessen.

Ruby    open("file.txt").read
Ruby    File.read("file.txt")
Python  open("file.txt").read()

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X