Scala進(jìn)行文件讀寫操作,都是直接調(diào)用的Java中的IO類:java.io.File躯护。
1.Scala寫文件
下面的例子往文件test1.txt中寫入一個字符串”I love Scala”:
import java.io._
object Test1 {
def main(args:Array[String]){
val writer = new PrintWriter(new File("test1.txt"));
writer.write("I love Scala");
writer.close();
}
}
編譯并執(zhí)行以上代碼腕窥,會產(chǎn)生如下的文件:
E:\Test>scalac Test1.scala
E:\Test>scala Test1
2.Scala讀文件
Scala讀文件非常簡單皂林,可以使用Scala的Source類及其伴生對象來讀取文件:以下實(shí)例演示了從上面創(chuàng)建的test1.txt文件中讀取內(nèi)容:
import scala.io.Source
object Test2 {
def main(args:Array[String]){
Source.fromFile("test1.txt").foreach{
print;
}
}
}
編譯并執(zhí)行以上代碼真屯,輸出結(jié)果如下:
E:\Test>scalac Test2.scala
E:\Test>scala Test2
I love Scala
3.Scala讀寫控制臺
有時(shí)候需要從控制臺與程序進(jìn)行交互,這就需要讀取控制臺輸入的內(nèi)容获列,使用StdIn類的readLine方法即可實(shí)現(xiàn):
import scala.io.StdIn
object Test3 {
def main(args:Array[String]){
print("Please input a string: ");
val line = StdIn.readLine;
println("Your string is : " + line);
}
}
編譯并執(zhí)行上述代碼,會提示輸入蛔垢,這時(shí)輸入一個字符串击孩,就是把輸入的字符串打印出來:
E:\Test>scalac Test3.scala
E:\Test>scala Test3
Please input a string: I love Scala
Your string is : I love Scala