【发布时间】:2018-05-08 15:53:38
【问题描述】:
我正在尝试使用 scala 和 spark 处理 xml 文件。
我有这个架构:
root
|-- IdKey: long (nullable = true)
|-- Value: string (nullable = true)
|-- CDate: date (nullable = true)
我想处理这个xml文件:
<Item>
<CDate>2018-05-08T00:00::00</CDate>
<ListItemData>
<ItemData>
<IdKey>2</IdKeyData>
<Value>1</Value>
</ItemData>
<ItemData>
<IdKey>61</IdKeyData>
<Value>2</Value>
</ItemData>
<ListItemData>
</Item>
我正在使用此代码:
sqlContext.read.format("com.databricks.spark.xml")
.option("rowTag", "Item")
.schema(schema)
.load(xmlFile)
但我的结果是一个没有 CDate 列的表格:
+------------+
IdKey |Value | CDate |
+------------+
|61 |1 | null
|2 |2 | null
是否可以使用此架构解析 xml 文件?我想获得这个值:
+------------+
IdKey |Value | CDate |
+------------+
|61 |1 | 2018-05-08T00:00::00
|2 |2 | 2018-05-08T00:00::00
谢谢
【问题讨论】:
-
您的 xml 数据是有效的 xml 吗?我认为它不是有效的 xml 数据
-
我忘记关闭标签了。但是xml原件是正确的。谢谢!
标签: xml scala parsing apache-spark