首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用Java.IO准备文件路径

使用Java.IO准备文件路径
EN

Stack Overflow用户
提问于 2019-08-04 21:36:47
回答 1查看 51关注 0票数 1

我是scala的新手,准备了下面的function.In函数,我需要检查特定的路径是否存在:

代码语言:javascript
复制
def insertData(df: DataFrame, path: String): Unit = {
    import sc.sqlContext.implicits._

    // get output path to export the parquet files
    val MPath = path+"/output"
    var getDates = df.select("dates").distinct().collect().map(_(0)).toList
    var invalidDates = new ListBuffer[String]()

    // check if output path is present or not

    if (new JFile(MPath ).exists) {

      for (dates <- getDates) {
        if (new JFile(MPath +"/Date=" + dates).exists) {


          invalidDates += "Date=" + dates.toString

          FileUtils.deleteDirectory(new JFile(MPath+ "/Date=" + dates))
        }

        else
        {
          log.info(s"No parquet associated with Date")
        }

      }
    }

    else
    {

      new JFile(MPath).mkdirs()
    }

     }

在这里,我使用了new JFile(MPath ),然后在for循环中使用new JFile(MPath +"/Date=" + dates).exists).I进行连接,只需避免重写new JFile .Is就可以避免这种情况的发生

EN

回答 1

Stack Overflow用户

发布于 2019-08-04 22:27:47

使用Hadoop的FileSystem:

代码语言:javascript
复制
def doesPathExist(pathStr: String):Boolean = {
   import org.apache.hadoop.conf.Configuration
   import org.apache.hadoop.fs.{FileSystem, Path}

   val path = new Path(pathStr)
   val fileSystem = path.getFileSystem(new Configuration)

   fileSystem.exists(path)
}
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/57347007

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档