开发者

Android: why use XMLReader?

开发者 https://www.devze.com 2023-02-26 07:29 出处:网络
Is there any reason why I should use a XMLReader with the SAXParser? I\'m seeing this kind of usage quite a lot:

Is there any reason why I should use a XMLReader with the SAXParser? I'm seeing this kind of usage quite a lot:

        sp = spf.newSAXParser();
开发者_开发百科        XMLReader xr = sp.getXMLReader();
        LoginContentHandler uch = new LoginContentHandler();
        xr.setContentHandler(uch);
        xr.parse(new InputSource(in));

I always use the parser this way:

        sp = spf.newSAXParser();
        DefaultHandler dh = new LoginContentHandler();
        sp.parse(in, dh);

Any particular reason? Just wondering because my way is shorter, and I don't really see why I should use a XMLReader.


so to answer the question.

People using XMLReader are assuming that there is enough memory to store the file as a tree object and be able to traverse it at Log(n) time for searching.

On the other hand using SAX straight would mean you are using a event based plugin which would be in n time, but should leave a much less memory foot print.

It's a choice between space and speed.

note the reading about this from SAX's own page:

0

精彩评论

暂无评论...
验证码 换一张
取 消