繁体   English   中英

如何将 Option[scala.xml.Elem] 值转换为 String

[英]How to convert Option[scala.xml.Elem] values into String

我是项目中Play Framework(Scala)新手我需要将XML响应值转换为普通String

我真正需要的

val result:Option[Elem] = //response from web server

例如,将此 XML 值视为result变量值

<response><play>Scala</play><version>2.3.9</version></response>

我需要像下面这样将 XML 值作为字符串获取

println("resultString:="+resultString)

需要的输出

resultString:=<response><play>Scala</play><version>2.3.9</version><response>

我检查了以下两种方法,但它没有像我需要的那样将整个XML值转换为String它只给出了像Scala2.3.9这样的值,而不像 XML 字符串。

val resultString:String = result.get.text
val resultString:String = result.get.toString()

已编辑

在打印result.get.toString()它将XML值打印为String但我在我的项目中所做的是将String值设置为一些JsObject例如Json.obj("resultString"->result.get.toString()) 当我从响应中获取JsObject时,它只显示值,而不显示Tags

默认情况下,Scala 具有您想要的行为。 请参阅以下输出:

scala> val resultString = <response><play>Scala</play><version>2.3.9</version></response>
resultString: scala.xml.Elem = <response><play>Scala</play><version>2.3.9</version></response>

scala> println("resultString:="+resultString)
resultString:=<response><play>Scala</play><version>2.3.9</version></response>

这应该转换为字符串:

scala> resultString.toString
res1: String = <response><play>Scala</play><version>2.3.9</version></response>

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM