gpt4 book ai didi

java - SAX 解析器不工作

转载 作者:行者123 更新时间:2023-12-02 08:08:57 26 4
gpt4 key购买 nike

我正在尝试使用java中的sax读取xml文件。我只获得 endElement 的输出,但无法找出 startElement 出了什么问题。

这是我的处理程序:

public class XMLHandler extends DefaultHandler {

public void startElement(String uri, String localName,String qName, Attributes attributes) throws SAXException {
System.out.println( "SAX Event: START ELEMENT[ " + localName + " ]" );
}

public void endElement( String namespaceURI, String localName, String qName ) throws SAXException {
System.out.println( "SAX Event: END ELEMENT[ " + localName + " ]" );
}

}

我使用以下代码对其进行测试:

 public static void main(String args[]) throws ParserConfigurationException, SAXException, IOException
{
SAXParserFactory spf = SAXParserFactory.newInstance();
spf.setNamespaceAware(true);
SAXParser saxParser = spf.newSAXParser();
saxParser.parse("http://www.w3schools.com/xml/note.xml", new XMLHandler());
}

我使用 w3schools 的示例 XML 文件:

<!-- Edited by XMLSpy® -->
<note>
<to>Tove</to>
<from>Jani</from>
<heading>Reminder</heading>
<body>Don't forget me this weekend!</body>
</note>

这是我的输出:

SAX Event: END ELEMENT[ to ]
SAX Event: END ELEMENT[ from ]
SAX Event: END ELEMENT[ heading ]
SAX Event: END ELEMENT[ body ]
SAX Event: END ELEMENT[ note ]

我真的不明白我在这里做错了什么......

最佳答案

我的猜测是你的方法原型(prototype)不正确。这就是为什么您应该始终使用 @Override 注释。您可能导入了错误的 Attributes 类?

关于java - SAX 解析器不工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7731101/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com