Scala 文件 I/O

Scala 進(jìn)行文件寫操作,直接用的都是 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("W3Cschool教程")
      writer.close()
   }
}

執(zhí)行以上代碼,會(huì)在你的當(dāng)前目錄下生產(chǎn)一個(gè) test.txt 文件,文件內(nèi)容為"W3Cschool教程":

$ scalac Test.scala 
$ scala Test
$ cat test.txt 
W3Cschool教程

從屏幕上讀取用戶輸入

有時(shí)候我們需要接收用戶在屏幕輸入的指令來(lái)處理程序。實(shí)例如下:

object Test {
   def main(args: Array[String]) {
      print("請(qǐng)輸入W3Cschool教程官網(wǎng) : " )
      val line = Console.readLine
      
      println("謝謝,你輸入的是: " + line)
   }
}

執(zhí)行以上代碼,屏幕上會(huì)顯示如下信息:

$ scalac Test.scala 
$ scala Test
請(qǐng)輸入W3Cschool教程官網(wǎng) : www.o2fo.com
謝謝,你輸入的是: www.o2fo.com

從文件上讀取內(nèi)容

從文件讀取內(nèi)容非常簡(jiǎn)單。我們可以使用 Scala 的 Source 類及伴生對(duì)象來(lái)讀取文件。以下實(shí)例演示了從 "test.txt"(之前已創(chuàng)建過(guò)) 文件中讀取內(nèi)容:

import scala.io.Source

object Test {
   def main(args: Array[String]) {
      println("文件內(nèi)容為:" )

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

執(zhí)行以上代碼,輸出結(jié)果為:

$ scalac Test.scala 
$ scala Test
文件內(nèi)容為:
W3Cschool教程