将元素追加为Anti-XML元素的子元素

前端之家收集整理的这篇文章主要介绍了将元素追加为Anti-XML元素的子元素前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
假设我有一个 XML文档存储为Anti- XML Elem:
val root : Elem =
    <foo attr="val">
        <bar/>
    </foo>

.我想追加< baz> blahblahblah< / baz>作为孩子的根元素,给予

val modified_root : Elem =
    <foo attr="val">
        <bar/>
        <baz>blahblahblah</baz>
    </foo>

为了比较,在Python中你可以只使用root.append(foo).

我知道我可以使用:将(作为兄弟)添加到Group [Node]中,但这不是我想要的:

<foo attr="val">
    <bar/>
</foo>
<baz>blahblahblah</baz>

如何将其作为< foo>的最后一个子项追加?看the documentation我看不出明显的方法.

Scala XML Building: Adding children to existing Nodes类似,除了这个问题是针对Anti-XML而不是scala.xml.

Elem是 case class,所以你可以使用copy:
import com.codecommit.antixml._

val root: Elem = <foo attr="val"><bar/></foo>.convert
val child: Elem = <baz>blahblahblah</baz>.convert

val modified: Elem = root.copy(children = root.children :+ child)

复制方法automatically generated for case classes,它采用命名参数,允许您更改原始实例的任何单个字段.

原文链接:https://www.f2er.com/xml/292170.html

猜你在找的XML相关文章