我有一个类似于下面的文本文件
20190920
123456789,6325,NN5555,123,4635,890,C,9
985632465,6467,KK6666,654,9780,636,B,8
258063464,6754,MM777,789,9461,895,N,5
我正在使用带有scala的spark 1.6来读取此文本文件
val df = sqlcontext.read.option("com.databricks.spark.csv")
.option("header","false").option("inferSchema","false").load(path)
df.show()
当我使用以上命令读取它时,它仅读取第一列。有什么要添加的内容来读取具有所有列值的文件。
我得到的输出:
20190920
123456789
985632465
258063464
3
答案 0 :(得分:1)
在这种情况下,您应该提供架构,因此您的代码将如下所示
val mySchema = StructType(
List(
StructField("col1", StringType, true),
StructField("col2", StringType, true),
// and other columns ...
)
)
val df = sqlcontext.read
.schema(mySchema)
.option("com.databricks.spark.csv")
.option("header","false")
.option("inferSchema","false")
.load(path)