假设我有一个
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:
原文链接:https://www.f2er.com/xml/292170.htmlimport 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,它采用命名参数,允许您更改原始实例的任何单个字段.