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

如何在没有文字元素名称的Scala中创建XML根节点?

发布时间:2020-12-16 19:15:04 所属栏目:安全 来源:网络整理
导读:我想创建一个这样的文档: root/ 我可以以编程方式添加子项.从理论上讲,它看起来像这样: val root_node_name = "root"val doc = {root_node_name}/ 但这似乎不起作用: error: not found: value 所以,我试过的是这样的: val root_node_name = "root"val do
我想创建一个这样的文档:

<root/>

我可以以编程方式添加子项.从理论上讲,它看起来像这样:

val root_node_name = "root"
val doc = <{root_node_name}/>

但这似乎不起作用:

error: not found: value <

所以,我试过的是这样的:

val root_node_name = "root"
val doc = new scala.xml.Elem(null,root_node_name,null,scala.xml.TopScope,null)

编译,但在运行时我得到这个空指针异常:

java.lang.NullPointerException
at scala.xml.Utility$.toXML(Utility.scala:201)
at scala.xml.Utility$$anonfun$sequenceToXML$2.apply(Utility.scala:235)
at scala.xml.Utility$$anonfun$sequenceToXML$2.apply(Utility.scala:235)
at scala.Iterator$class.foreach(Iterator.scala:414)
at scala.runtime.BoxedArray$AnyIterator.foreach(BoxedArray.scala:45)
at scala.Iterable$class.foreach(Iterable...

我正在使用Scala 2.8.有关如何解决此问题的任何示例?谢谢.

解决方法

你应该传递属性的空列表(scala.xml.Null),如果你不想要任何子节点,你甚至不应该包含最后的参数.您想要一个空的子列表,而不是一个恰好为null的子项.所以:

scala> val root_node_name = "root"
root_node_name: java.lang.String = root

scala> val doc = new scala.xml.Elem(null,scala.xml.Null,scala.xml.TopScope)
doc: scala.xml.Elem = <root></root>

(编辑:李大同)

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

    推荐文章
      热点阅读