首页 > 解决方案 > 我可以从 scala-spark 的目录中只读取想要的文件吗

问题描述

我想读取一些名称在数组中的特定文件。我可以仅在这些文件中读取和存储值吗?我是 scala 和 spark 的新手,请帮帮我。

整个文件

val status = fs.listStatus(new Path("..../sample/t1988")) 

status.foreach(x=> println(x.getPath))

file:/......../sample/t1988/01001099999.csv
file:/......../sample/t1988/01001399999.csv
file:/......../sample/t1988/01001499999.csv

等等

我要读取的文件名在一个数组中

arr: Array[Any] = Array(42044099999, 42045099999, 42060099999, 42063099999, 42075099999, 42077099999, 42079099999, 42080199999

如何仅读取上述文件的内容

标签: scalaapache-spark-sql

解决方案


如果您有一个包含 csv 文件路径的数组files,则可以使用 Spark 读取它们,如下所示:

val df = spark.read.format("csv").load(files:_*)

推荐阅读