如何从Java中的XML文件中读取\ n等特殊字符?

时间:2013-09-23 06:21:01

标签: java xml

在我的XML中我有

  

<'nodeName'> separator = \ n<'/ nodeName'>

我正在使用DOM Parser来解析XML。当我读取Java代码中的值时,我得到的值为 \ n 。它不被视为换行符,而是字符(\ n)。

我是XML解析的新手,因此我不确定要将值设置为换行符而不是字符 \ n < / p>

从我的代码中添加几行。抱歉,我无法添加完整的代码,但我希望我的问题很清楚,下面的代码行可以为它添加一些额外的亮点。

DocumentBuilder dBuilder = DocumentBuilderFactory.newInstance().newDocumentBuilder();
Document doc = dBuilder.parse(file);                
XPath xPath = XPathFactory.newInstance().newXPath();
XPathExpression xPExprAdditionalInfo = xPath.compile("./nodeName");
String separator =  xPExprAdditionalInfo.evaluate(node);

任何帮助都将不胜感激。

1 个答案:

答案 0 :(得分:1)

我希望以下解释清除你的困惑:

转义序列\n不是XML文件中的换行符。这只是Java了解新行的一种方式。

新行字符取决于铺设操作系统。查找更详细的解释here

我认为有两种解决方案

1。因此,对于您的问题,您可以尝试用新的换行符序列替换\n个字符。

separator.replaceAll("\\\\n", "\n");
  1. 如果您可以自由地在XML中添加新行

    <'nodeName'>separator=
     <'/nodeName'>