Scala XML 提取逗号分隔符中的元素

标签 scala scala-xml

我的代码

scala.xml.XML.loadString("<?xml version='1.0' encoding='utf-8'?>" + line(1)).child

它会给我这样的列表:

List(<c2>KH0011201</c2>, <c3>-1</c3>, <c4>380</c4>, <c7>50000</c7>, <c98/>)

我想成为这样的人

KH0011201, -1, 380, 50000, null

我试过:

scala.xml.XML.loadString("<?xml version='1.0' encoding='utf-8'?>" + line(1)).child.text

但它给了我行,无法识别。

最佳答案

xml.Elem::text您尝试使用的方法确实是正确的调用方法,但您必须将其应用于映射转换中的每个子对象:

import scala.xml.Elem

List[Elem](<c2>KH0011201</c2>, <c3>-1</c3>, <c4>380</c4>, <c7>50000</c7>, <c98/>)
  .map(_.text)
// List[String] = List("KH0011201", "-1", "380", "50000", "")

请注意,它转换了空值 <c98/>元素到 ""而不是 null .

关于Scala XML 提取逗号分隔符中的元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55193351/

相关文章:

scala - 我可以在 Scala 中使用具体类型覆盖类型参数化方法吗?

scala - 如何正确使用 scalac -Xlint

Scala 使用最终静态变量

xml - 删除 scala 中的前缀属性 (scala-xml)

java - 为什么我的 scala 程序不忽略 xml 文件的 DTD?

css - 如何使用 Binding.scala 声明嵌入式 css

scala - Scala 中 int 的 += 方法在哪里

mysql - 如何将 MySQL JOOQ 重命名表查询范围限定在同一个数据库中?

xml - 在 Scala 中,如何使用转换器/重写规则将递增 ID 放入 XML 元素中

xml - Scala XML 拉解析器和位置