чтение текстовых файлов в Scala

#linux #scala

#linux #scala

Вопрос:

Я пытался читать текстовые файлы с помощью Scala по одной строке за раз

 scala> import scala.io.Source
scala> val filename = "read from file"

scala> for (line <- Source.fromFile(filename).getLines)
      {
        println(line)
      }
  

Но при вводе последней строки в терминале я получаю эту ошибку:

 java.io.FileNotFoundException: open file scala (No such file or directory)
  at java.base/java.io.FileInputStream.open0(Native Method)
  at java.base/java.io.FileInputStream.open(FileInputStream.java:219)
  at java.base/java.io.FileInputStream.<init>(FileInputStream.java:157)
  at scala.io.Source$.fromFile(Source.scala:91)
  at scala.io.Source$.fromFile(Source.scala:76)
  at scala.io.Source$.fromFile(Source.scala:54)
... 32 elided
  

Комментарии:

1. Имя файла в коде, которым вы поделились, и ошибка не совпадают. В любом случае, ошибка, похоже, просто в том, что файла, который вы ищете, там нет. Дважды проверьте, что имя файла является действительным и присутствует в рабочем каталоге вашего REPL. Вы можете проверить рабочий каталог с помощью java.nio.file.Paths.get("").toAbsolutePath().toString .

Ответ №1:

Введите правильный полный путь к файлу в filename .

Что-то вроде /home/username/workdir/some_file.txt .