Spark CSV Dataframe Load,找不到文件

时间:2017-09-27 07:32:56

标签: csv apache-spark dataframe

如果在spark csv read中的给定位置找不到我的文件,如何捕获异常?

try {
    val df = sqlCxt.read.format("csv")
    .option("delimiter", "|")
    .load("C:/Users/swapnil.shirke/Downloads/dataset/u.item");

}
catch {

case ex: FileNotFoundException => {
println(" file missing exception")
}
case ex: Exception => ex.printStackTrace()
}

给予尝试捕获条件不起作用。

1 个答案:

答案 0 :(得分:2)

在scala中,如果文件路径不正确,则异常为org.apache.spark.sql.AnalysisException: Path does not exist: ....,所以正确的方法是

try {
  val df = sqlCxt.read.format("csv")
    .option("delimiter", "|")
    .load("/Users/swapnil.shirke/Downloads/dataset/u.item");

}
catch {
  case ex: AnalysisException => {
    println(" file missing exception")
  }
  case ex: Exception => ex.printStackTrace()
}

我希望答案很有帮助