java - 如何忽略 XML SAX PARSING 中的相似标签

标签 java android saxparser

我有这样的 XML

<OuterTag>
       <Name>JAVA
      </Name>
<InnerTag>
     <Name> PHP
    </Name>
</InnerTag>

</OuterTag>

我只想要包含“Java”的值。但是当我解析时它也带来了“PHP”,因为本地名称是相同的。是否可以过滤多个 LocalNames 并选择我想要的一个?我怎样才能做到这一点?

最佳答案

这个想法是保存你所处的状态,只需使用一个 boolean 值,如果你找到“OuterTag”的开放标签,则将其设置为 true;当你找到“InnerTag”的开放标签时,将其设置为 false .

这样,当您找到“名称”标签时,您现在所在的位置。

另一种更灵活的方法是在找到标签名称时推送/弹出标签名称。这样,当您找到“名称”标签时,您可以检查谁是您的父标签,然后获取正确的值。

关于java - 如何忽略 XML SAX PARSING 中的相似标签,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9433745/

相关文章:

java - 通过超链接从 jsp 向 servlet 传递值

android - Google Play 服务已过时。需要 7571000 但找到 6774470

java - SAXParserFactory 是否容易受到 XXE 攻击?

Java 映射到 JSON 字符串

静态变量的 Java 范围以及在按钮操作监听器中使用变量

java - 为什么在 Android API 22 上的 Espresso 测试中 IdlingResource 为空?

Android 模拟器窗口跳出屏幕

android - NestedScrollView 在使用 nestedScrollEnabaled 属性时抛出错误 "android.view.InflateException"

android - 中止 SAX 解析中间文档?

json - 使用字符串或流解析的区别(Poco c++)