📅  最后修改于: 2023-12-03 14:47:17.176000             🧑  作者: Mango
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,不过用起来还是比较方便的。