尽管在spark中删除了其中的所有文件,但无法删除文件夹名称

时间:2018-03-08 15:55:25

标签: scala apache-spark hdfs

我在运行spark作业之前删除了输出文件夹。 有时它删除它但有时会删除里面的所有文件,但顶级文件夹仍然存在。

我有子文件夹的结构类型。

这是我删除文件夹的方式。

def DeleteDescrFolder(fs: org.apache.hadoop.fs.FileSystem, descrFileURL: String) = {
    val bDescr = fs.exists(new Path(descrFileURL))
    if (true.equals(bDescr)) {
      val outputFile = fs.globStatus(new Path(descrFileURL))
      for (DeleteFilePath <- outputFile) {
        fs.delete(DeleteFilePath.getPath)
      }
      println("Descr File is delete from  " + descrFileURL)
    } else {
      println(descrFileURL + "Decsr Does not Exist")
    }
  }

我如何删除文件夹名称?

1 个答案:

答案 0 :(得分:1)

您正在删除指定文件夹中的文件。尝试使用以下代码删除文件夹

def DeleteDescrFolder(fs: org.apache.hadoop.fs.FileSystem, descrFileURL: String) = {
  if (fs.exists(new Path(descrFileURL))) {
    try{
      fs.delete(new Path(descrFileURL),true)
      println("Descr folder is deleted " + descrFileURL)
    }catch{case e: Exception =>
      print("exeption "+e)
    }
  } else {
    println(descrFileURL + "Decsr Does not Exist")
  }
}