Интерфейс Parser
- Все известные реализующие классы:
XMLReaderAdapter
@Deprecated(since="1.5") public interface Parser
Это был основной интерфейс-источник событий для SAX1; в SAX2 он заменён интерфейсом XMLReader, который включает поддержку пространств имён, а также расширенные возможности настройки и расширения.
Все анализаторы SAX1 должны реализовывать этот базовый интерфейс: он позволяет приложениям регистрировать обработчики для различных типов событий и запускать разбор из URI или символьного потока.
Все анализаторы SAX1 также должны реализовывать конструктор без аргументов (хотя допускаются и другие конструкторы).
Анализаторы SAX1 можно использовать повторно, но они не являются реентерабельными: приложение может повторно использовать объект анализатора (возможно, с другим источником ввода) после успешного завершения первого разбора, но не может рекурсивно вызывать методы parse() во время разбора.
- Начиная с:
- 1.4, SAX 1.0
- См. также:
Краткое описание методов
| Модификатор и тип | Метод | Описание |
|---|---|---|
void |
parse |
Устарело. Разбирает XML-документ по системному идентификатору (URI). |
void |
parse |
Устарело. Разбирает XML-документ. |
void |
setDocumentHandler |
Устарело. Позволяет приложению зарегистрировать обработчик событий документа. |
void |
setDTDHandler |
Устарело. Позволяет приложению зарегистрировать обработчик событий DTD. |
void |
setEntityResolver |
Устарело. Позволяет приложению зарегистрировать пользовательский обработчик сущностей. |
void |
setErrorHandler |
Устарело. Позволяет приложению зарегистрировать обработчик событий ошибок. |
void |
setLocale |
Устарело. Позволяет приложению запросить локаль для ошибок и предупреждений. |
Подробное описание методов
setLocale
void setLocale(Locale locale) throws SAXException
Анализаторы SAX не обязаны предоставлять локализацию ошибок и предупреждений; однако, если они не могут поддерживать запрошенную локаль, то должны выбросить исключение SAX. Приложения не могут запрашивать смену локали во время разбора.
- Параметры:
-
locale— объект Java Locale. - Выбрасывает:
-
SAXException— выбрасывает исключение (с использованием предыдущей или локали по умолчанию), если запрошенная локаль не поддерживается. - См. также:
setEntityResolver
void setEntityResolver(EntityResolver resolver)
Если приложение не регистрирует обработчик сущностей, анализатор SAX самостоятельно разрешает системные идентификаторы и открывает подключения к сущностям (это поведение по умолчанию реализовано в HandlerBase).
Приложения могут зарегистрировать новый или другой обработчик сущностей во время разбора, и анализатор SAX должен немедленно начать использовать новый обработчик.
- Параметры:
-
resolver— объект для разрешения сущностей. - См. также:
setDTDHandler
void setDTDHandler(DTDHandler handler)
Если приложение не регистрирует обработчик DTD, все события DTD, о которых сообщает анализатор SAX, будут молча игнорироваться (это поведение по умолчанию реализовано в HandlerBase).
Приложения могут зарегистрировать новый или другой обработчик во время разбора, и анализатор SAX должен немедленно начать использовать новый обработчик.
- Параметры:
-
handler— обработчик DTD. - См. также:
setDocumentHandler
void setDocumentHandler(DocumentHandler handler)
Если приложение не регистрирует обработчик документа, все события документа, о которых сообщает анализатор SAX, будут молча игнорироваться (это поведение по умолчанию реализовано в HandlerBase).
Приложения могут зарегистрировать новый или другой обработчик во время разбора, и анализатор SAX должен немедленно начать использовать новый обработчик.
- Параметры:
-
handler— обработчик документа. - См. также:
setErrorHandler
void setErrorHandler(ErrorHandler handler)
Если приложение не регистрирует обработчик событий ошибок, все события ошибок, о которых сообщает анализатор SAX, будут молча игнорироваться, за исключением fatalError, который вызовет SAXException (это поведение по умолчанию реализовано в HandlerBase).
Приложения могут зарегистрировать новый или другой обработчик во время разбора, и анализатор SAX должен немедленно начать использовать новый обработчик.
- Параметры:
-
handler— обработчик ошибок. - См. также:
parse
void parse(InputSource source) throws SAXException, IOException
Приложение может использовать этот метод, чтобы указать анализатору SAX начать разбор XML-документа из любого допустимого источника ввода (символьного потока, байтового потока или URI).
Приложения не могут вызывать этот метод, пока выполняется разбор (для каждого дополнительного XML-документа следует вместо этого создавать новый Parser). После завершения разбора приложение может повторно использовать тот же объект Parser, возможно, с другим источником ввода.
- Параметры:
-
source— источник ввода для верхнего уровня XML-документа. - Выбрасывает:
-
SAXException— любое исключение SAX, возможно, оборачивающее другое исключение. -
IOException— исключение ввода-вывода от анализатора, возможно, из байтового или символьного потока, предоставленного приложением. - См. также:
parse
void parse(String systemId) throws SAXException, IOException
Этот метод является сокращённой формой для распространённого случая чтения документа по системному идентификатору. Он полностью эквивалентен следующему:
parse(new InputSource(systemId));
Если системный идентификатор является URL-адресом, приложение должно полностью разрешить его до передачи анализатору.
- Параметры:
-
systemId— системный идентификатор (URI). - Выбрасывает:
-
SAXException— любое исключение SAX, возможно, оборачивающее другое исключение. -
IOException— исключение ввода-вывода от анализатора, возможно, из байтового или символьного потока, предоставленного приложением. - См. также:
© 1993, 2025, Oracle and/or its affiliates. All rights reserved.
Documentation extracted from Debian's OpenJDK Development Kit package.
Licensed under the GNU General Public License, version 2, with the Classpath Exception.
Various third party code in OpenJDK is licensed under different licenses (see Debian package).
Java and OpenJDK are trademarks or registered trademarks of Oracle and/or its affiliates.
https://docs.oracle.com/en/java/javase/25/docs/api/java.xml/org/xml/sax/Parser.html
XMLReader, который включает поддержку пространств имён.