0
我想解析一個XML文檔使用SAX。 XML文檔如下所示:我正在解析使用SAX
<users>
<row Id="-1" DisplayName="Apple">
<row Id="1" DisplayName="Banana">
<row Id="2" DisplayName="Orange">
</users>
這是我的分析器類,它負責解析row
元素的摘錄:
class SAXParser extends DefaultHandler {
static int i = 0;
ArrayList<ArrayList<String>> ar = new ArrayList<ArrayList<String>>();
ArrayList<String> id = new ArrayList<String>();
public void startElement(String uri, String localName,
String qName, Attributes atts) {
if (qName.equals("row")) {
int idx = 0;
id.add(idx, atts.getValue(0));
idx++;
id.add(idx, atts.getValue(3));
ar.add(i, id);
i++;
//idx = 0;
}
}
}
如果我運行該程序,我得到以下導致ar
屬性,這不是我想要的:
[2,Orange,1,Banana,-1,Apple], [2,Orange,1,Banana,-1,Apple],
[2,Orange,1,Banana,-1,Apple], [2,Orange,1,Banana,-1,Apple]
我想是有Id
,DisplayName
雙在ar
屬性是這樣的:
[-1, Apple], [1, Banana], [2, Orange]
我做了什麼錯?我怎樣才能達到預期的效果?
我急忙想着你的袖子卡在解析器中,但看起來你好,謝天謝地。 – 2012-07-10 05:04:27
您無法運行該程序。請提供一個揭示問題的最小工作示例。 @Paul:也很害怕...... ;-) – Axel 2012-07-10 05:36:10