Scala 文件 I/O


Scala 進行檔案寫入操作,直接用的都是java中的I/O 類別(java.io.File):

import java.io._

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

      writer.write("php中文网")
      writer.close()
   }
}

執行以上程式碼,會在你目前的目錄下生產一個test.txt 文件,文件內容為"php中文網":

$ scalac Test.scala 
$ scala Test
$ cat test.txt 
php中文网

從螢幕上讀取使用者輸入

有時候我們需要接收使用者在螢幕輸入的指令來處理程式。實例如下:

object Test {
   def main(args: Array[String]) {
      print("请输入php中文网官网 : " )
      val line = Console.readLine
      
      println("谢谢,你输入的是: " + line)
   }
}

執行上述程式碼,螢幕上會顯示以下資訊:

$ scalac Test.scala 
$ scala Test
请输入php中文网官网 : www.php.cn
谢谢,你输入的是: www.php.cn

從檔案上讀取內容

從檔案讀取內容非常簡單。我們可以使用 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
文件内容为:
php中文网