在我的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);
任何帮助都将不胜感激。
答案 0 :(得分:1)
我希望以下解释清除你的困惑:
转义序列\n
不是XML
文件中的换行符。这只是Java了解新行的一种方式。
新行字符取决于铺设操作系统。查找更详细的解释here。
我认为有两种解决方案
1。因此,对于您的问题,您可以尝试用新的换行符序列替换\n
个字符。
separator.replaceAll("\\\\n", "\n");
如果您可以自由地在XML
中添加新行
<'nodeName'>separator=
<'/nodeName'>