Inhalt einer Textdatei auf den Bildschirm ausgeben ... Scala (2)
Scala
So ein Dateizugriff ist ja auch schnell geproggert... In C# oder anderen Sprachen braucht man meistens so 5 Zeilen oder so.....
Kategorie So ein Dateizugriff ist ja auch schnell geproggert... In C# oder anderen Sprachen braucht man meistens so 5 Zeilen oder so.....
So kann es mit Scala gehen ->
package hello
import scala.io.Source
object ReadFromFile {
def main(args:ArrayString) {
Source.fromFile(args(0)).getLines.foreach(println);
}
}
Hierbei gibt es nur ein kleines Problemchen, funktioniert nur einwandfrei bei reinen ASCII-Dateien
Bei Dateien, welche eine anderes Encoding haben kann es zu folgender Fehlermeldung kommen ->
Exception in thread "main" java.nio.BufferUnderflowException
at java.nio.Buffer.nextGetIndex(Unknown Source)
at java.nio.HeapCharBuffer.get(Unknown Source)
at scala.io.BufferedSource$$anon$2.<init>(BufferedSource.scala:77)
at scala.io.BufferedSource.<init>(BufferedSource.scala:74)
at scala.io.BufferedSource$$anon$1.<init>(BufferedSource.scala:34)
at scala.io.BufferedSource$.fromInputStream(BufferedSource.scala:32)
at scala.io.BufferedSource$.fromInputStream(BufferedSource.scala:27)
at scala.io.BufferedSource$.fromInputStream(BufferedSource.scala:23)
at scala.io.Source$.fromFile(Source.scala:132)
at scala.io.Source$.fromFile(Source.scala:122)
at scala.io.Source$.fromFile(Source.scala:101)
at scala.io.Source$.fromFile(Source.scala:95)
at hello.ReadFromFile$.main(ReadFromFile.scala:7)
at hello.ReadFromFile.main(ReadFromFile.scala)
Sieht nicht besonders schön aus
Na ja, demnächst bei einem Weizen in der Sonne wird sich das Problem wohl lösen
Gruß JJR
package hello
import scala.io.Source
object ReadFromFile {
def main(args:ArrayString) {
Source.fromFile(args(0)).getLines.foreach(println);
}
}
Hierbei gibt es nur ein kleines Problemchen, funktioniert nur einwandfrei bei reinen ASCII-Dateien
Bei Dateien, welche eine anderes Encoding haben kann es zu folgender Fehlermeldung kommen ->
Exception in thread "main" java.nio.BufferUnderflowException
at java.nio.Buffer.nextGetIndex(Unknown Source)
at java.nio.HeapCharBuffer.get(Unknown Source)
at scala.io.BufferedSource$$anon$2.<init>(BufferedSource.scala:77)
at scala.io.BufferedSource.<init>(BufferedSource.scala:74)
at scala.io.BufferedSource$$anon$1.<init>(BufferedSource.scala:34)
at scala.io.BufferedSource$.fromInputStream(BufferedSource.scala:32)
at scala.io.BufferedSource$.fromInputStream(BufferedSource.scala:27)
at scala.io.BufferedSource$.fromInputStream(BufferedSource.scala:23)
at scala.io.Source$.fromFile(Source.scala:132)
at scala.io.Source$.fromFile(Source.scala:122)
at scala.io.Source$.fromFile(Source.scala:101)
at scala.io.Source$.fromFile(Source.scala:95)
at hello.ReadFromFile$.main(ReadFromFile.scala:7)
at hello.ReadFromFile.main(ReadFromFile.scala)
Sieht nicht besonders schön aus
Na ja, demnächst bei einem Weizen in der Sonne wird sich das Problem wohl lösen
Gruß JJR