3

我的代码

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

但它给了我一条线,无法识别。

4

1 回答 1

3

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/>元素的值转换为""and not null

于 2019-03-16T10:52:01.283 回答