Scala - 文件 I/O


Scala 开放使用任何 Java 对象,而java.io.File是可在 Scala 编程中用于读写文件的对象之一。

以下是写入文件的示例程序。

例子

import java.io._

object Demo {
   def main(args: Array[String]) {
      val writer = new PrintWriter(new File("test.txt" ))

      writer.write("Hello Scala")
      writer.close()
   }
}

将上述程序保存在Demo.scala中。以下命令用于编译和执行该程序。

命令

\>scalac Demo.scala
\>scala Demo

它将在程序所在的当前目录中创建一个名为Demo.txt的文件。以下是该文件的内容。

输出

Hello Scala

从命令行读取一行

有时您需要从屏幕读取用户输入,然后进行进一步的处理。以下示例程序向您展示如何从命令行读取输入。

例子

object Demo {
   def main(args: Array[String]) {
      print("Please enter your input : " )
      val line = Console.readLine
      
      println("Thanks, you just typed: " + line)
   }
}

将上述程序保存在Demo.scala中。以下命令用于编译和执行该程序。

命令

\>scalac Demo.scala
\>scala Demo

输出

Please enter your input : Scala is great
Thanks, you just typed: Scala is great

读取文件内容

从文件中读取非常简单。您可以使用 Scala 的Source类及其伴生对象来读取文件。以下示例向您展示如何读取我们之前创建的“Demo.txt”文件。

例子

import scala.io.Source

object Demo {
   def main(args: Array[String]) {
      println("Following is the content read:" )

      Source.fromFile("Demo.txt" ).foreach { 
         print 
      }
   }
}

将上述程序保存在Demo.scala中。以下命令用于编译和执行该程序。

命令

\>scalac Demo.scala
\>scala Demo

输出

Following is the content read:
Hello Scala