|
|||||||
АвтоАвтоматизацияАрхитектураАстрономияАудитБиологияБухгалтерияВоенное делоГенетикаГеографияГеологияГосударствоДомДругоеЖурналистика и СМИИзобретательствоИностранные языкиИнформатикаИскусствоИсторияКомпьютерыКулинарияКультураЛексикологияЛитератураЛогикаМаркетингМатематикаМашиностроениеМедицинаМенеджментМеталлы и СваркаМеханикаМузыкаНаселениеОбразованиеОхрана безопасности жизниОхрана ТрудаПедагогикаПолитикаПравоПриборостроениеПрограммированиеПроизводствоПромышленностьПсихологияРадиоРегилияСвязьСоциологияСпортСтандартизацияСтроительствоТехнологииТорговляТуризмФизикаФизиологияФилософияФинансыХимияХозяйствоЦеннообразованиеЧерчениеЭкологияЭконометрикаЭкономикаЭлектроникаЮриспунденкция |
XMLReaderFactory.createXMLReader(
“org.apache.xerces.parsers.SAXParser”); 3. Передать в XMLReader объект класса, созданного на шаге 1 с помощью соответствующих методов: setContentHandler(), setErrorHandler(), setDTDHandler(), setEntityResolver(). 4. Вызвать метод parse(), которому в качестве параметров передать путь (URI) к анализируемому документу либо InputSource. Следующий пример выводит на консоль содержимое XML-документа. /* пример # 1: чтение и вывод XML-документа: SimpleHandler.java */ package chapt16.analyzer.sax;import org.xml.sax.ContentHandler; import org.xml.sax.Attributes;
public class SimpleHandler implements ContentHandler {
public void startElement(String uri, String localName, String qName, Attributes attrs) { String s = qName; //получение и вывод информации об атрибутах элемента for (int i = 0; i < attrs.getLength(); i++) { s += " " + attrs.getQName(i) + "=" + attrs.getValue(i) + " "; } System. out. print(s.trim()); } public void characters(char [] ch, int start, int length) { System.out.print(new String(ch, start, length)); } public void endElement(String uri, String localName, String qName) { System. out. print(qName); } } /* пример # 2: создание и запуск парсера: SAXSimple.java*/ package chapt16.main; import org.xml.sax.XMLReader; import org.xml.sax.XMLReaderFactory; import org.xml.sax.SAXException; import javax.xml.parsers.ParserConfigurationException; import java.io.IOException; import chapt16.analyzer.sax.SimpleHandler;
public class SAXSimple { public static void main(String[] args) { try { //создание SAX-анализатора XMLReader reader = XMLReaderFactory.createXMLReader(); SimpleHandler contentHandler = new SimpleHandler(); reader.setContentHandler(contentHandler); reader.parse("students.xml"); } catch (SAXException e) { e.printStackTrace(); System. out. print("ошибка SAX парсера"); } catch (ParserConfigurationException e) { e.printStackTrace(); System. out. print("ошибка конфигурации"); } catch (IOException e) { e.printStackTrace(); System. out. print("ошибка I/О потока"); } } } В результате в консоль будет выведено (если убрать из XML-документа ссылку на DTD): Students student login=mit faculty=mmf Name Mitar Alex name Telephone 2456474 telephone Address Country Belarus country City Minsk city Street Kalinovsky 45 street Address Student student login=pus faculty=mmf Name Pashkun Alex name Telephone 3453789 telephone Address Country Belarus country City Brest city Street Knorina 56 street Address Student Поиск по сайту: |
Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Студалл.Орг (0.004 сек.) |