如何在Scala中添加带变换器的CDATA部分?

时间:2016-08-03 06:18:20

标签: xml scala cdata transformer

我尝试使用Scala转换器在XML文档中的文本周围添加CDATA部分。我使用以下变压器:

object AddCDATATransformer extends RewriteRule {
  override def transform(n: Node): Seq[Node] = n match {
    case n: Text => scala.xml.PCData(n.text)
    case _ => n
  }
}

但这不起作用。文本在那里,但CDATA部分不是,即我希望<![CDATA[text]]>而不是text。有什么想法吗?

PS1。我发现有一些-Xxml:coalescing标志,但找不到任何关于如何使用它的文档。

PS2。奇怪的是,在另一个变换器中我可以用节点复制产生CDATA部分:

n.copy(child = scala.xml.PCData(v) ++ n.child.tail)

0 个答案:

没有答案