检查 blob 存储中是否存在文件夹并添加到列表中

Justanothertekguy

我正在 Databricks 中创建一个函数来检查 Azure Blob 存储中是否存在文件夹:

import java.io.File

def checkFolder(paths: List[String]): Unit = {
  
  for (f <- paths) {
    try
      {   
        var pathCheck = dbutils.fs.ls(f) 
       }
  catch {
    case ex: Exception => {
      println("Folder does not exists: " + f)
      }
    }
  }
}

我想添加列表中存在的文件夹,以便我可以读取这些路径中的数据!我还想添加不同列表中不存在的路径。

我该怎么做?

亚历克斯·奥特

尝试这样的事情:

val (exist, doesnt) = paths.map {
  f => try {
    dbutils.fs.ls(f)
    (f, true)
  } catch {
    case _: Exception => 
      (f, false)
  }
}.partition(_._2)

这将为您(String, Boolean)提供现有和不存在文件的两个类型序列,然后您可以使用以下方法从中提取文件路径:

exist.map(_._1)
doesnt.map(_._1)

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章