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

Man*_*ero 5 xml scala apache-spark

我尝试做的是使用 XML 解析器解析字符串。

我只找到这种在 Scala 中使用 Spark 进行解析的方法:

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

我需要解析的是一个字符串,而不是一个文件

那么,是否有任何选项可以加载字符串(而不是文件路径)?

谢谢!

Bip*_*was 0

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

val xmlStringRDD = sc.parallelize(List("Your xml string"))
Run Code Online (Sandbox Code Playgroud)

然后使用RDD如下

val df = new XmlReader().xmlRdd(spark.sqlContext(), xmlStringRDD);
Run Code Online (Sandbox Code Playgroud)

其中 - Spark 是 Spark 会话(来自 Spark 2.0+)。

请注意:此 xmlRdd 方法已被讨论为已弃用,因此目前它可以工作,将来可能不会。