我有一个包含XML文件的文件夹,我们假定这些文件具有相同的结构。但是由于生成这些文件的应用程序中的错误,其中一些文件不完整:
预期结构:
root
|-- R: struct (nullable = true)
| |-- LTI: struct (nullable = true)
| | |-- C: long (nullable = true)
| | |-- V: long (nullable = true)
| |-- MFV: string (nullable = true)
需要被忽略的结构:
root
|-- R: struct (nullable = true)
| |-- LTI: long (nullable = true)
| |-- MFV: string (nullable = true)
这就是我解析的方式
df = spark.read \
.format("com.databricks.spark.xml") \
.options(rowTag="RList") \
.load("/mnt/data/uploads/*/*/*/RList.xml")
df.select(
"R.LTI.C",
"R.LTI.V",
"R.MFV",
).show()
这就是我试图加载不完整的XML时所捕捉到的
Can't extract value from R#204.LTI: need struct type but got string;"
我的问题是如何忽略此类文件?