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中,使用以下命令編譯和執行此程序。

D:\>scalac Demo.scala
D:\>scala Demo
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中,使用以下命令編譯和執行此程序。

D:\>scalac Demo.scala
D:\>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中,使用以下命令編譯和執行此程序。

D:\>scalac Demo.scala
D:\>scala Demo
Following is the content read:
Hello Scala