Возможно, это вопрос n00b.Sax Parser: processingInstruction() не называется
Я пытаюсь разобрать XML-файл, как это:
<?xml version="1.0" encoding="UTF-8" ?>
<test>
<a></a>
</test>
со следующим кодом:
public static void parse(File f) {
final DefaultHandler handler = new DefaultHandler() {
@Override
public void processingInstruction(String target, String data) throws SAXException {
System.out.println("Processing Instruction");
}
};
SAXParserFactory.newInstance().newSAXParser().parse(f, handler);
}
Я ожидаю, что выход "Processing Instruction"
для печати на стандартный вывод. Но этого не происходит. Может кто-нибудь сказать мне, почему?
Спасибо за ответ. Другой вопрос: можно ли узнать, существует ли в файле допустимое объявление xml? – Martin
@Martin: ISTR, что он выдаст исключение, если объявление недействительно. –
Другими словами, объявление xml не является инструкцией обработки и не должно быть сообщено синтаксическим анализатором как единое целое. –