SAX解析
SaxParserHandler里面的方法都是系統(tǒng)調(diào)用的嗎?那順序是怎樣的呢?為什么characters()方法輸出的結(jié)果可以直接跟在節(jié)點(diǎn)名字的后面?沒(méi)有懂,請(qǐng)大神指教
SaxParserHandler里面的方法都是系統(tǒng)調(diào)用的嗎?那順序是怎樣的呢?為什么characters()方法輸出的結(jié)果可以直接跟在節(jié)點(diǎn)名字的后面?沒(méi)有懂,請(qǐng)大神指教
2016-03-31
舉報(bào)
2016-05-23
1 遇到<?xml version="1.0" encoding="UTF-8"?>,則自動(dòng)調(diào)用startDocument()
2 接著,凡是遇到開(kāi)始標(biāo)簽<>,則先自動(dòng)調(diào)用startElement()
3 如果解析標(biāo)簽后,標(biāo)簽內(nèi)有內(nèi)容,則自動(dòng)調(diào)用characters()
4 如果解析標(biāo)簽后,標(biāo)簽內(nèi)還有標(biāo)簽,也是像第二步一樣調(diào)用startElement()。
上述三步如此反復(fù)進(jìn)行。
5 遇到結(jié)束標(biāo)簽</>,則自動(dòng)調(diào)用endElement()
6 xml文檔結(jié)束時(shí),則自動(dòng)調(diào)用endDocument()
我覺(jué)得是這樣。希望幫到您。
2016-04-01
其實(shí)我也不知道,,我是菜鳥(niǎo)
2016-04-01
個(gè)人理解,以此拋磚引玉?:
我認(rèn)為是這樣的順序:startElement>>characters>>endElement,這是相對(duì)于每一個(gè)標(biāo)簽而言的,還記得視頻中,老師第一次使用characters(),程序的運(yùn)行結(jié)果嗎?當(dāng)時(shí)他是有很多空行的(在3-3中的10:30秒開(kāi)始的),就是因?yàn)檎{(diào)用了characters()方法.
這是我的個(gè)人理解,也不知道是對(duì)還是錯(cuò),希望能有所幫助!