scala - val df_read_old = spark.read.format("csv").option("header", "true").option("delimiter","^").schema(old_schema).load("D:\\TESTSCALA\ \"+"${lstfile}")
问题描述
val df_read_old = spark.read.format("csv").option("header", "true").option("delimiter","^").schema(old_schema).load("D:\\TESTSCALA\\"+"${lstfile}") // is not able to read file from variable.
任何其他方式来做到这一点,或者我错过了一些东西。
当文件在给定路径中可用时出现以下错误:
Exception in thread "main" org.apache.spark.sql.AnalysisException: Path does not exist: file:/D:/TESTSCALA/${lstfile};
at org.apache.spark.sql.execution.datasources.DataSource$.org$apache$spark$sql$execution$datasources$DataSource$$checkAndGlobPathIfNecessary(DataSource.scala:621)
at org.apache.spark.sql.execution.datasources.DataSource$$anonfun$14.apply(DataSource.scala:350)
at org.apache.spark.sql.execution.datasources.DataSource$$anonfun$14.apply(DataSource.scala:350)
at scala.collection.TraversableLike$$anonfun$flatMap$1.apply(TraversableLike.scala:241)
at scala.collection.TraversableLike$$anonfun$flatMap$1.apply(TraversableLike.scala:241)
at scala.collection.immutable.List.foreach(List.scala:392)
at scala.collection.TraversableLike$class.flatMap(TraversableLike.scala:241)
at scala.collection.immutable.List.flatMap(List.scala:355)
at org.apache.spark.sql.execution.datasources.DataSource.resolveRelation(DataSource.scala:349)
at org.apache.spark.sql.DataFrameReader.load(DataFrameReader.scala:178)
at org.apache.spark.sql.DataFrameReader.load(DataFrameReader.scala:156)
at com.tmobile.dev.compare.serializedmaterial11$.main(test.scala:31)
at com.tmobile.dev.compare.serializedmaterial11.main(test.scala)
解决方案
val lstfile = ??? // your file here
val old_schema = "" // your schema here
val df_read_old = spark.read.format("csv").option("header", "true").option("delimiter","^").schema(old_schema)
.load(s"D:\TESTSCALA\${lstfile}")
您必须s
像上面的示例一样正确使用 scala 字符串替换。
推荐阅读
- vba - 有没有办法在 VBA 中逐行读取 xls 文件?
- angular - angular 6 httpclient在url中传递凭据
- php - 如何将首页上的moodle moove类别列表更改为卡片?
- javascript - javascript中的动态和直接变量返回之间是否存在一些性能差异?
- javascript - jQuery UI 图像滑块
- reactjs - React - 在默认提供者周围创建连接的提供者,它将从存储中获取数据并将其作为道具传递给默认提供者
- powershell - 如何使用 Powershell 脚本在 Azure Active Directory 的清单下添加应用角色
- javascript - node.js 中的一个正则表达式让我感到困惑
- odoo - 如何在 Odoo 11 中安装下载的后端主题
- angularjs - 本地范围属性和传入的属性值是否可以在具有隔离范围的 angularjs 指令中互换使用