Scala 文件操作:读写与系统命令交互
Scala 提供了简洁的 API 用于文件读写和系统命令执行,既可以利用 Java 的 IO 类库,也可以使用 Scala 标准库中的工具(如 scala.io.Source)。此外,Scala 对系统命令的支持尤为便捷,能轻松实现命令执行、管道和重定向。本文将详细介绍 Scala 的文件操作和系统命令交互方式。
文件读取:scala.io.Source
Scala 标准库的 scala.io.Source 是读取文本文件的首选工具,支持从文件、URL、输入流等多种来源读取数据。
读取文件的所有行
使用 Source.fromFile 打开文件,getLines 方法获取所有行(返回 Iterator[String]):
1 | import scala.io.Source |
关键说明:
Source.fromFile的第一个参数可以是文件路径字符串("data.txt")或java.io.File对象。- 第二个参数指定编码(如
"UTF-8"),默认使用系统编码。 - 必须在
finally块中调用source.close(),确保资源释放。
读取整个文件为字符串
使用 mkString 方法直接将文件内容转换为单个字符串:
