写入文本文件:
Scala需要使用java.io.PrintWriter实现把数据写入到文本文件。
采用相对路径时,当使用用户名hadoop登录Linux系统,打开Scala解释器进入命令提示符状态后,输入以下代码:
- scala> import java.io.PrintWriter
- import java.io.PrintWriter
- scala> val out = new PrintWriter("output.txt")
- out: java.io.PrintWriter = java.io.PrintWriter@25641d39
- scala> for (i <- 1 to 5) out.println(i)
- scala> out.close()
如果我们想把文件保存到一个指定的目录下,就需要给出文件路径,代码如下:
- scala> import java.io.PrintWriter
- import java.io.PrintWriter
- scala> val out = new PrintWriter("/usr/local/scala/mycode/output.txt")
- out: java.io.PrintWriter = java.io.PrintWriter@25641d39
- scala> for (i <- 1 to 5) out.println(i)
- scala> out.close()
读取文本文件中的行:
使用Scala.io.Source的getLines方法实现对文件中所有行的读取:
- scala> import scala.io.Source
- import scala.io.Source
- scala> val inputFile = Source.fromFile("output.txt")
- inputFile: scala.io.BufferedSource = non-empty iterator
- scala> val lines = inputFile.getLines
- lines: Iterator[String] = non-empty iterator
- scala> for (line <- lines) println(line)