📜  Scala 中的文件处理(1)

📅  最后修改于: 2023-12-03 14:47:17.176000             🧑  作者: Mango

Scala中的文件处理

Scala提供了很多操作文件的方法,本篇文章讲解其中一些比较常用的文件处理方法。

读取文件

Scala中,我们可以使用Source对象读取文件,前提是需要导入scala.io.Source包。

import scala.io.Source

val file = Source.fromFile("myfile.txt")
for (line <- file.getLines) {
  println(line)
}
file.close()

以上代码以只读模式打开myfile.txt文件,并且读取了文件的所有行并打印出来。

写入文件

Scala中,我们可以使用Java的java.io.PrintWriter类来写入文件。

import java.io._

val writer = new PrintWriter(new File("myfile.txt" ))
writer.write("Hello Scala")
writer.close()

以上代码创建了一个名为myfile.txt的新文件,并且写入了一行“Hello Scala”。

追加文件

Scala中我们可以使用Java的java.io.FileWriter类来追加文件。

import java.io._

val writer = new FileWriter(new File("myfile.txt" ), true)
writer.write("\nappend line")
writer.close()

以上代码以追加模式打开myfile.txt文件,并且往文件末尾追加了一行“append line”。

删除文件

Scala中,我们可以使用Java的java.io.File类的delete方法来删除文件。

import java.io._

val file = new File("myfile.txt")
if (file.exists) {
  file.delete
  println(s"${file.getName} deleted")
}

以上代码判断文件的存在性,如果是存在的,就将该文件删除,如果不存在,则不做任何处理。

重命名文件

Scala中,我们可以使用Java的java.io.File类的renameTo方法来重命名文件。

import java.io._

val oldFile = new File("myfile.txt")
val newFile = new File("newfile.txt")
if (oldFile.exists) {
  oldFile.renameTo(newFile)
  println("File renamed")
}

以上代码判断文件的存在性,如果是存在的,就将文件名重命名为newfile.txt

获取文件信息

Scala中,我们可以使用Java的java.io.File类来获取文件的信息。

import java.io._

val file = new File("myfile.txt")
if (file.exists) {
  println(s"file name: ${file.getName}")
  println(s"path: ${file.getAbsolutePath}")
  println(s"size: ${file.length}")
}

以上代码判断文件的存在性,如果是存在的,就打印出文件的名称、文件的路径和文件的大小。

总结:

以上就是Scala中的一些常用的文件处理方法,略微有点类似于Java,不过用起来还是比较方便的。