Язык XML - практическое введение (часть 2)


Использование Java XML-обработчиков - часть 5


}

// Встретился закрывающий тэг элемента

public void endElement(String name) {

out.println("</"+name+">");

}

// Текстовые символы

public void characters(char ch[], int start, int length) {

characters += length;

out.println(new String(ch, start, length));

}

// Необрабатываемые символы(например, содержимое секции CDATA)

public void ignorableWhitespace(char ch[], int start, int length) {

characters(ch, start, length);

}

// Инструкции XML-процессору

public void processingInstruction (String target, String data) {

out.print("<?"); out.print(target); if (data != null && data.length() > 0) { out.print(' '); out.print(data); } out.print("?>");

}

//=================================================== // Методы интерфейса ErrorHandler //===============================

// Последнее предупреждение public void warning(SAXParseException ex) { System.err.println("Warning at "+ ex.getLineNumber()+" . "+ ex.getColumnNumber()+" - "+ ex.getMessage()); }

// Произошла ошибка public void error(SAXParseException ex) { System.err.println("Error at {"+ ex.getLineNumber()+" . "+ ex.getColumnNumber()+" - "+ ex.getMessage()); }

// Такие ошибки исправить уже нельзя public void fatalError(SAXParseException ex) throws SAXException { System.err.println("Fatal error at {"+ ex.getLineNumber()+" . "+ ex.getColumnNumber()+" - "+ ex.getMessage()); throw ex; }

//======================================================= // Вывести информацию о документе //===============================

public void printInfo() {

System.out.println();

System.out.println("Документ "+url+" был успешно обработан");

System.out.println("Элементов : "+elements); System.out.println("Атрибутов : "+attributes); System.out.println("Символов : "+characters);

}

}

//======================================================= // Обработка XML документа //========================

public class saxSample{

public static void main(String argv[]) {

try { saxParser sample = new saxParser(argv[0]);

Parser parser = ParserFactory.makeParser("com.ibm.xml.parsers.SAXParser"); parser.setDocumentHandler(sample); parser.setErrorHandler(sample);

parser.parse(argv[0]); sample.printInfo(); } catch (Exception e) { e.printStackTrace(System.err); }

}

}

   




Начало  Назад  Вперед



Книжный магазин