Scala 文件 I/O
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("碩編程") writer.close() } }
執(zhí)行以上代碼,會(huì)在你的當(dāng)前目錄下生產(chǎn)一個(gè) test.txt 文件,文件內(nèi)容為"碩編程":
$ scalac test.scala $ scala test $ cat test.txt 碩編程
1. 從屏幕上讀取用戶輸入
有時(shí)候我們需要接收用戶在屏幕輸入的指令來處理程序。范例如下:
import scala.io._ object test { def main(args: array[string]) { print("請(qǐng)輸入碩編程官網(wǎng) : " ) val line = stdin.readline() println("謝謝,你輸入的是: " + line) } }
scala2.11 后的版本 console.readline 已廢棄,使用 scala.io.stdin.readline() 方法代替。
執(zhí)行以上代碼,屏幕上會(huì)顯示如下信息:
$ scalac test.scala $ scala test 請(qǐng)輸入碩編程官網(wǎng) : 謝謝,你輸入的是:
2. 從文件上讀取內(nèi)容
從文件讀取內(nèi)容非常簡(jiǎn)單。我們可以使用 scala 的 source 類及伴生對(duì)象來讀取文件。以下范例演示了從 "test.txt"(之前已創(chuàng)建過) 文件中讀取內(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)容為: 碩編程