2010-03-27 14 views
12

¿Cómo puedo crear un nodo en Scala sin usar literales?Scala XML: cree un nodo que no use literales

Lo que necesito es para establecer el nombre de la etiqueta nodo en tiempo de ejecución, por ejemplo:

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

¿Cómo puedo obtener un nodo <post>234</post>?

Respuesta

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

En Scala 2.8:

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