如何使用scala中的spark xml解析器解析XML中的字符串?

时间:2016-11-03 08:33:43

标签: xml scala apache-spark

我尝试做的是使用XML解析器解析String。

我只能在scala中使用Spark来解析这种方法:

val df = sqlContext
  .read
  .format("com.databricks.spark.xml")
  .option("rowTag", "book")
  .load("books.xml")

我需要解析的是String,而不是文件

那么,是否有加载字符串(不是文件路径)的选项?

谢谢!

1 个答案:

答案 0 :(得分:0)

从字符串中创建一个RDD,如下所示

val xmlStringRDD = sc.parallelize(List("Your xml string"))

然后按如下方式使用RDD

val df = new XmlReader().xmlRdd(spark.sqlContext(), xmlStringRDD);

其中 - spark是spark会话(From Spark 2.0 +)。

  

请注意:我们讨论过这个xmlRdd方法已被弃用,所以对于   现在它可以工作,将来可能不会。