English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

Файлы I/O в Scala

Scala выполняет файловые операции записи, используя классы I/O java (java.io.File)

import java.io._;
object Test {
   def main(args: Array[String]) {
      val writer = new PrintWriter(new File("test.txt"));
      writer.write("Основной учебный сайт");
      writer.close();
   }
}

Выполнение вышеуказанного кода создаст файл test.txt в текущей директории, содержимое файла: "Основной учебный сайт":

$ scalac Test.scala 
$ scala Test
$ cat test.txt 
Сайт основного учебника

Чтение ввода пользователя с экрана

Иногда нам нужно принимать инструкции пользователя, введенные на экране, для обработки программы. Вот пример:

import scala.io._
object Test {
   def main(args: Array[String]) {
      print("Введите официальный веб-сайт основного учебника: ")
      val line = StdIn.readLine()
      println("Спасибо, вы ввели: " + line)
   }
}

Версии Scala2.11 и выше Console.readLine Устарело, используйте метод scala.io.StdIn.readLine().

Выполните следующий код, и на экране будет отображена следующая информация:

$ scalac Test.scala 
$ scala Test
Введите официальный веб-сайт основного учебника: ru.oldtoolbag.com
Спасибо, вы ввели: ru.oldtoolbag.com

Чтение содержимого с файла

Чтение содержимого файла очень просто. Мы можем использовать Scala для чтения содержимого файла. Source Классы и аккомпанементные объекты для чтения файлов. Вот пример того, как читать содержимое файла "test.txt" (ранее созданного):

import scala.io.Source
object Test {
   def main(args: Array[String]) {
      println("Содержание файла:")
      Source.fromFile("test.txt").foreach{ 
         print 
      }
   }
}

Выполните следующий код, результат вывода будет:

$ scalac Test.scala 
$ scala Test
Содержание файла:
Сайт основного учебника