我想解析以下XML文件并打印标签簿的所有属性列表。我正在使用SAX解析器进行解析。问题是它只打印第一个属性。另一个属性未打印。 XML如下。
<?xml version="1.0"?>
<catalog>
<book id="bk101" action="lock">
<author>Gambardella, Matthew</author>
<title>XML Developer's Guide</title>
<genre>Computer</genre>
</book>
</catalog>
我应该如何编写代码来打印标签簿的所有属性。
答案 0 :(得分:0)
startElement的SAX回调可能如下所示。这里的属性在循环中解析:
public void startElement(String namespaceURI, String localName,
String qName, Attributes atts)
throws SAXException
{
System.out.print("<"+qName);
for(int i=0; i<atts.getLength(); i++) {
System.out.print(" "+atts.getQName(i)+"=\""+atts.getValue(i)+"\"");
}
System.out.println(">");
}