1

一般来说,我对 XML 处理和 Scala 都是新手。根据下面的示例 xml,我有几个问题/事情要实现

val xml = <begin>
    <definition>
         <var>x</var>
         <install>new version</install>
    </definition>
</begin>

的类型xml是 Elem。现在,如果我想搜索给定的标签/子标签,让我们说

 xml \\ "definition"

我正在获取序列 [节点]。Eleman和 this 类型有什么区别?作为查询特定标签的结果,我可以得到Elem一个结果,即从该标签开始取回 elem 吗?

我的第二个问题是关于修改 XML。有没有一种简单的方法来实现某种形式:“安装”标签之间的每个值 -> 用 XXXX 替换,其余的应该保持不变。有没有一种方法可以让您实现这一目标?谢谢

4

1 回答 1

1

要了解 Elem(DOM 元素)和 Node 之间的区别,请先查看此链接:

XML中的元素和节点有什么区别?

在高层次上,Node 是一个抽象概念,表示 XML 文档中的位置(属性、文本节点、元素),而 Element 是一种具体类型的 Node,由类似的东西表示;

<install>foo</install>

现在,对于您问题的第二部分,我将更多地关注将动态内容放入一组固定的 XML 中,而不是尝试改变现有的 XML。你可以这样做:

def buildXml(version:String) = {
  <begin>
    <definition>
      <var>x</var>
      <install>{version}</install>
    </definition>
  </begin>
}
于 2013-05-02T11:22:16.653 回答