如何在保留换行符的同时获取元素(CDATA)的内容?

时间:2017-04-10 13:20:28

标签: jdom-2

我试图获取只有CDATA部分的Element的内容。 CDATA内部有多行文字。

但是当我尝试element.getValue() .getText().getTextTrim()时,他们都会删除换行符。

我需要一个保留换行符的String。我该怎么办?

1 个答案:

答案 0 :(得分:1)

这是我根据示例XML文件放在一起的一些代码:

<root>
   <data><![CDATA[This is text
   with some newlines
   in it, and some other spaces.]]></data>
</root>

和代码:

public static void main(String[] args) throws JDOMException, IOException {
    Document doc = new SAXBuilder().build("data/cdata.xml");
    String cdata = doc.getRootElement().getChild("data").getText();
    System.out.println(cdata);
}

产生输出:

This is text
   with some newlines
   in it, and some other spaces.

这意味着它可以正常工作。