java - 带有命名空间前缀的 TagSoup 属性

标签 java sax xml-parsing saxparser

为了使用 TagSoup 解析 xml 响应,我扩展了 DefaultHandler,现在我遇到了一个问题,它忽略了方法中具有限定名称的属性;

public void startElement(String namespaceURI, String localName, String qName, Attributes atts) throws SAXException 

元素如下所示;

<element xmlns:ns2="http://my.ns.url">{content}</element>

当到达此元素的 startElement 方法时,atts 参数中没有任何属性。有谁知道如何在不调整 xml 的情况下解决这个问题?

编辑 我尝试对功能使用 setFeature 方法;

http://xml.org/sax/features/namespace-prefixes

但没有任何结果

最佳答案

我通过停止使用 TagSoup 来修复它,并解析为标准的 Android SAXParser。然后我按如下方式更改了功能设置;

setFeature("http://xml.org/sax/features/namespaces", false);    
setFeature("http://xml.org/sax/features/namespace-prefixes", true);

关于java - 带有命名空间前缀的 TagSoup 属性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4178394/

相关文章:

java - Jsoup空指针异常

java - 更新后 setAutoCreateRowSorter 无法正确对表列进行排序

java - 在 Saxon 9 中,他的 Java XML 解析器无法识别正则表达式中的单词边界 (\b)

python - xml 批量文件编辑器按数字递增

xml - 如何从大型 XML 文档中获取流式迭代器 [Node]?

java - 从数据库检索数据并使用 JcomboBox 显示

java - 当我尝试生成从文件中读取的消息时,Naive Kafka Producer 无法工作

java - 在 SAX 解析期间确定根元素

安卓 : Cdata in xml not parsing correctly(sax)

java - 使用java中的SAX解析器从XML中获取所有标签和值