2010-03-27 44 views
12

如何在不使用文字的情况下在Scala中创建节点?Scala XML:创建不使用文字的节点

我需要的是在运行时设置节点的标签名称,例如:

var tag = "post" 
var content = "234" 

我怎样才能得到一个节点<post>234</post>

回答

11
scala> import xml._ 
import xml._ 

scala> def textElem(name: String, text: String) = Elem(null, name, Null, TopScope, Text(text)) 
textElem: (name: String,text: String)scala.xml.Elem 

scala> textElem("foo", "bar")                 
res0: scala.xml.Elem = <foo>bar</foo> 
21

在斯卡拉2.8:

<xml>{content}</xml>.copy(label = tag)