加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

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

发布时间:2020-12-16 07:41:35 所属栏目:百科 来源:网络整理
导读:假设我有一个 XML文档存储为Anti- XML Elem: val root : Elem = foo attr="val" bar/ /foo .我想追加 baz blahblahblah / baz作为孩子的根元素,给予 val modified_root : Elem = foo attr="val" bar/ bazblahblahblah/baz /foo 为了比较,在Python中你可以只
假设我有一个 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,它采用命名参数,允许您更改原始实例的任何单个字段.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读