# 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("菜鳥教程")
writer.close()
}
}
```
執行以上代碼,會在你的當前目錄下生產一個 test.txt 文件,文件內容為"菜鳥教程":
```
$ scalac Test.scala
$ scala Test
$ cat test.txt
菜鳥教程
```
## 從屏幕上讀取用戶輸入
有時候我們需要接收用戶在屏幕輸入的指令來處理程序。實例如下:
```
object Test {
def main(args: Array[String]) {
print("請輸入菜鳥教程官網 : " )
val line = Console.readLine
println("謝謝,你輸入的是: " + line)
}
}
```
執行以上代碼,屏幕上會顯示如下信息:
```
$ scalac Test.scala
$ scala Test
請輸入菜鳥教程官網 : www.runoob.com
謝謝,你輸入的是: www.runoob.com
```
## 從文件上讀取內容
從文件讀取內容非常簡單。我們可以使用 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
文件內容為:
菜鳥教程
```
- Scala 教程
- Scala 簡介
- Scala 安裝
- Scala 基礎語法
- Scala 數據類型
- Scala 變量
- Scala 訪問修飾符
- Scala 運算符
- Scala IF...ELSE 語句
- Scala 循環
- Scala while 循環
- Scala do...while 循環
- Scala do...while 循環
- Scala break 語句
- Scala 函數
- Scala 函數傳名調用(call-by-name)
- Scala 指定函數參數名
- Scala 函數 - 可變參數
- Scala 遞歸函數
- Scala 高階函數
- Scala 函數嵌套
- Scala 匿名函數
- Scala 偏應用函數
- Scala 函數柯里化(Currying)
- Scala 閉包
- Scala 字符串
- Scala 數組
- Scala Collection
- Scala List(列表)
- Scala Set(集合)
- Scala Map(映射)
- Scala 元組
- Scala Option(選項)
- Scala Iterator(迭代器)
- Scala 類和對象
- Scala Trait(特征)
- Scala 模式匹配
- Scala 正則表達式
- Scala 異常處理
- Scala 提取器(Extractor)
- Scala 文件 I/O