java - 使用 < 和 > 解析 xml 文件

标签 java xml

我正在解析 xml 文件以使用 Lucene 查询某些字段。但我对 <> 有问题。我知道 xml 中的无效字符是“&”、“<”、“">”。

所以我的问题是:如何在 xml 文件中表示 < 和 >?

xml 文件示例:

<?xml version="1.0" encoding="UTF-8"?>
<iniciativa_completa>
  <legislatura>NSA</legislatura>
  <numero_diario>3, 123, 257-65</numero_diario>
  <parrafo> While the individual main effects were modest, each yielding OR &lt; 1.6, the effects were cumulative, with some combinations reaching OR = 12.6 (95% CI: 5.9-26.8).</parrafo>
</iniciativa_completa>

然后,在我的java代码中:

String resumen = "";
XMLInputFactory xmlInputFactory = XMLInputFactory.newInstance();
XMLEventReader xmlEventReader = xmlInputFactory.createXMLEventReader(new FileInputStream(fileName));
xmlEventReader.nextEvent();

while (xmlEventReader.hasNext()) {
     XMLEvent xmlEvent = xmlEventReader.nextEvent();

     if (xmlEvent.isStartElement()) {
         StartElement startElement = xmlEvent.asStartElement();

        if (startElement.getName().getLocalPart().equals("parrafo")) {
           xmlEvent = xmlEventReader.nextEvent();
           resumen = xmlEvent.toString();                            
        }
     }
}

当我解析它时,resumen 等于“虽然各个主效应是适度的,但每个产生 OR”。

我也尝试过 <>

谢谢!

最佳答案

我已经修正了错误。创建 XMLInputFactory 后,我设置以下属性:

 xmlInputFactory.setProperty(IS_COALESCING,true);

https://docs.oracle.com/javase/7/docs/api/javax/xml/stream/XMLInputFactory.html

谢谢大家。

关于java - 使用 < 和 > 解析 xml 文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46400174/

相关文章:

java - XStream 中的序列化问题

c# - 使用 C# 将选择性 XML 数据加载到数据集中

java - 如何在 XML 中添加 CDATA 而不会丢失 java 中的 <br/> 标记?

java - 遍历一堆整数并匹配字符串

html - 使用xsl填充html表格中的空行

java - 如何将带有gradle的源代码热部署到tomcat7中?

java - 添加一个附加文件作为项目 Artifact

xml - YAML 与 XML 的比较

java - 如何告诉 Maven 不要忽略导入的 XSD 中的命名空间属性?

java - 在Map中减少两次迭代