欢迎来到天天文库
浏览记录
ID:45100802
大小:299.34 KB
页数:27页
时间:2019-11-09
《《XMl的SAX读取方法》PPT课件》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、第5章SAXTheSimpleAPIforXML1在应用程序中使用XML文档XML文档XML解析器XML应用程序DOM接口SAX接口2SAX的特点通过触发事件,顺序访问元素已经分析过的数据,不能再返回处理内存占用量较少,基本固定事实标准,而非W3C标准最初版本SAX1.0当前版本SAX2.03SAX语法分析体系结构SAXParserFactorySAXParserXMLSAXReaderContentHandlerErrorHandlerDTDHandlerEntityHandler4获取SAX解析器javax.xml.parsers.SAX
2、ParserFactory;javax.xml.parsers.SAXParser;javax.xml.parsers.ParserConfigurationException;//gettheparserSAXParserFactoryfactory=SAXParserFactory.newInstance();SAXParsersaxParser=factory.newSAXParser();//parsethedocumentsaxParser.parse(newFile(argv[0]),handler);5将某个handler传送给
3、解析器NotethataneventhandlerhastobepassedtotheSAXparser.Thismustimplementtheinterfaceorg.xml.sax.ContentHandler;Easiertoextendtheadapterorg.xml.sax.helpers.DefaultHandler6OverridingHandlermethodsMostimportantmethodstooverridevoidstartDocument()Calledoncewhendocumentparsingbegi
4、nsvoidendDocument()CalledoncewhenparsingendsvoidstartElement(...)CalledeachtimeanelementbegintagisencounteredvoidendElement(...)Calledeachtimeanelementendtagisencounteredvoidcharacters(...)CalledrandomlybetweenstartElementandendElementcallstoaccumulatedcharacterdata7startEl
5、ementpublicvoidstartElement(StringnamespaceURI,//ifnamespaceassocStringsName,//nonqualifiednameStringqName,//qualifiednameAttributesattrs)//listofattributesAttributeinfoisobtainedbyqueryingAttributesobjects.8Characterspublicvoidcharacters(charbuf[],//bufferofcharsaccumulate
6、dintoffset,//beginelementofcharsintlen)//numberofcharsNote,charactersmaybecalledmorethanoncebetweenbegintag/endtagAlso,mixed-contentelementsrequirecarefulhandling9SAX应用示例(1/9)作为输入的XML文档Kilpeläinen7、t>PekkaMöttönenMattiMöttönenMaijaRömppänenMaija10SAX应用示例1(2.1/9)要求的输出如下:
7、t>PekkaMöttönenMattiMöttönenMaijaRömppänenMaija
8、PekkaKilpeläinen(1234)MattiMöttönen(5678)MaijaMöttönen(9012)MaijaRömppänen(3456)11
此文档下载收益归作者所有