下列標記是我的XML:無法解析使用SAX解析器
<Body>
<tag1 xmlns=""> <innerTag></innerTag> </tag1>
</Body>
的問題是,我不能夠進去<tag1></tag1>
的字符串,是<innerTag></innerTag>
。以下是我的邏輯:
public void startElement(final String uri, final String localName,
final String qName, final Attributes attributes)
throws SAXException {
if ("tag1".equalsIgnoreCase(qName)){
inTag1 = true;
System.out.println("start");
}
}
public void endElement(final String uri, final String localName,
final String qName) throws SAXException {
if ("tag1".equalsIgnoreCase(qName)) {
System.out.println("end");
inTag1 = false;
}
}
public void characters(final char[] ch, final int start, final int length) {
if (inTag1) {
System.out.println("@@@" + new String(ch, start, length));
}
}
}
但它是給我空輸出。任何人都可以幫忙
'innerTag'是一個元素不是字符串或文本節點。如果你想打印它,你必須在'startElement'和'endElement'回調中完成。 – Alex
''將由'startElement'處理(並通過'endElement'關閉標籤,只在您的條件的其他部分打印'qname')。所以'字符'處理程序不會看到它們。 –
martijno