Scala中遍历文件、删除文件和目录

来源:互联网 发布:linux alarm 编辑:程序博客网 时间:2024/05/17 07:59
目前Scala没有“正式的”用来访问某个目录中的所有文件,或者递归地遍历所有目录的类,可以借助java的File类来实现文件目录的遍历和文件操作。

import java.io.File/** * 20170309 * 目录操作 */object dir {  def main(args: Array[String]) {    val path: File = new File("C:/Users/wei/ScalaWorkspace/learn0305")    for (d <- subdirs(path))      println(d)  }  //遍历目录  def subdirs(dir: File): Iterator[File] = {    val children = dir.listFiles.filter(_.isDirectory())    children.toIterator ++ children.toIterator.flatMap(subdirs _)  }  //删除目录和文件  def dirDel(path: File) {    if (!path.exists())      return    else if (path.isFile()) {      path.delete()      println(path + ":  文件被删除")      return    }    val file: Array[File] = path.listFiles()    for (d <- file) {      dirDel(d)    }    path.delete()    println(path + ":  目录被删除")  }}

0 0