【问题标题】:How to write/add attribute in rowTag of XML file generated through scala databrick如何在通过 scala databrick 生成的 XML 文件的 rowTag 中写入/添加属性
【发布时间】:2019-10-22 17:22:31
【问题描述】:

我必须创建像 <book book-id=123> 这样的结构,书是行标签。我正在使用带有 scala 的 databrick 来编写 XML。

df.repartition(1)
  .write
  .format("com.databricks.spark.xml")
  .option("rootTag", "category")
  .option("rowTag", "book")
  .mode("overwrite")
  .save("bookdetail")

如何在书籍rowTag 中添加属性book-id

【问题讨论】:

    标签: scala apache-spark databricks


    【解决方案1】:

    To 可以通过添加以特殊前缀开头的列来在 XML 中创建属性。 来自文档:

    attributePrefix:属性的前缀,以便我们区分属性和元素。这将是字段名称的前缀。默认是_。

    因此,在您的情况下,您只需向数据集添加一个额外的列:

    df
        .withColumn("_book-id", $"id") //this column is prefixed with _
        .repartition(1)
        .write
        .format("com.databricks.spark.xml")
        .option("rootTag", "category")
        .option("rowTag", "book")
        .mode("overwrite")
        .save("C:\\Users\\RK03GJ\\ProcesDevel\\dump")
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2022-01-15
      • 1970-01-01
      • 1970-01-01
      • 2015-08-15
      • 2011-09-04
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多