Spec-Zone.ru › OpenJDK 24

Интерфейс XMLStreamReader

Все суперинтерфейсы:
XMLStreamConstants
Все известные реализующие классы:
StreamReaderDelegate
public interface XMLStreamReader extends XMLStreamConstants
Интерфейс XMLStreamReader предоставляет прямой, только для чтения доступ к XML. Он разработан как самый низкий и наиболее эффективный способ чтения данных XML.

XMLStreamReader разработан для итерации по XML с помощью методов next() и hasNext(). Доступ к данным осуществляется с помощью методов, таких как getEventType(), getNamespaceURI(), getLocalName() и getText();

Экземпляр XMLStreamReader создается с начальным типом события START_DOCUMENT. В любой момент времени он имеет текущее событие, к которому обращаются методы интерфейса, и может загрузить следующее событие с помощью метода next(). Тип текущего события можно определить с помощью getEventType(), а следующее возвращается методом next().

События парсинга определяются как объявление XML, DTD, открывающая тег, символьные данные, пробелы, закрывающая тег, комментарий или инструкция обработки. События атрибутов или пространства имен могут встречаться на корневом уровне документа в результате операции запроса.

Для соответствия спецификации XML 1.0 процессор XML должен передавать идентификаторы объявленных необработанных сущностей, декларации обозначений и их ассоциированные идентификаторы приложению. Эта информация предоставляется через API свойств в этом интерфейсе. Следующие два свойства обеспечивают доступ к этой информации: javax.xml.stream.notations и javax.xml.stream.entities. Когда текущее событие является DTD, следующий вызов вернёт список обозначений List l = (List) getProperty("javax.xml.stream.notations"); Следующий вызов вернёт список деклараций сущностей: List l = (List) getProperty("javax.xml.stream.entities"); Эти свойства могут быть доступны только во время события DTD и возвращают null, если информация недоступна.

Следующая таблица описывает, какие методы допустимы в каком состоянии. Если метод вызывается в недопустимом состоянии, он генерирует исключение java.lang.IllegalStateException.

Допустимые методы для каждого состояния
Тип события Допустимые методы
Все состояния getProperty(), hasNext(), require(), close(), getNamespaceURI(), isStartElement(), isEndElement(), isCharacters(), isWhiteSpace(), getNamespaceContext(), getEventType(), getLocation(), hasText(), hasName()
START_ELEMENT next(), getName(), getLocalName(), hasName(), getPrefix(), getAttributeXXX(), isAttributeSpecified(), getNamespaceXXX(), getElementText(), nextTag()
ATTRIBUTE next(), nextTag() getAttributeXXX(), isAttributeSpecified(),
NAMESPACE next(), nextTag() getNamespaceXXX()
END_ELEMENT next(), getName(), getLocalName(), hasName(), getPrefix(), getNamespaceXXX(), nextTag()
CHARACTERS next(), getTextXXX(), nextTag()
CDATA next(), getTextXXX(), nextTag()
COMMENT next(), getTextXXX(), nextTag()
SPACE next(), getTextXXX(), nextTag()
START_DOCUMENT next(), getEncoding(), getVersion(), isStandalone(), standaloneSet(), getCharacterEncodingScheme(), nextTag()
END_DOCUMENT close()
PROCESSING_INSTRUCTION next(), getPITarget(), getPIData(), nextTag()
ENTITY_REFERENCE next(), getLocalName(), getText(), nextTag()
DTD next(), getText(), nextTag()
С момента:
1.6
См. также:
  • XMLEvent
  • XMLInputFactory
  • XMLStreamWriter

Краткое описание полей

Поля, объявленные в интерфейсе javax.xml.stream.XMLStreamConstants

ATTRIBUTE, CDATA, CHARACTERS, COMMENT, DTD, END_DOCUMENT, END_ELEMENT, ENTITY_DECLARATION, ENTITY_REFERENCE, NAMESPACE, NOTATION_DECLARATION, PROCESSING_INSTRUCTION, SPACE, START_DOCUMENT, START_ELEMENT

Краткое описание методов

Модификатор и тип Метод Описание
void close()
Освобождает все ресурсы, связанные с этим читателем.
int getAttributeCount()
Возвращает количество атрибутов в этом событии START_ELEMENT. Метод валиден только для START_ELEMENT или ATTRIBUTE.
String getAttributeLocalName(int index)
Возвращает localName атрибута по заданному индексу.
QName getAttributeName(int index)
Возвращает qname атрибута по заданному индексу.
String getAttributeNamespace(int index)
Возвращает имя пространства имён атрибута по заданному индексу.
String getAttributePrefix(int index)
Возвращает префикс этого атрибута по заданному индексу.
String getAttributeType(int index)
Возвращает тип XML атрибута по заданному индексу.
String getAttributeValue(int index)
Возвращает значение атрибута по индексу.
String getAttributeValue(String namespaceURI, String localName)
Возвращает нормализованное значение атрибута с пространством имён и локальным именем. Если namespaceURI равно null, пространство имён не проверяется на равенство.
String getCharacterEncodingScheme()
Возвращает кодировку символов, объявленную в XML-декларации. Возвращает null, если кодировка не была объявлена.
String getElementText()
Читает содержимое элемента только с текстом. Бросает исключение, если это не элемент только с текстом.
String getEncoding()
Возвращает кодировку входных данных, если она известна, или null, если неизвестна.
int getEventType()
Возвращает целое число, указывающее тип события, на которое указывает курсор.
String getLocalName()
Возвращает (локальное) имя текущего события.
Location getLocation()
Возвращает текущую позицию процессора.
QName getName()
Возвращает QName для текущего события START_ELEMENT или END_ELEMENT.
NamespaceContext getNamespaceContext()
Возвращает контекст пространства имён только для чтения для текущей позиции.
int getNamespaceCount()
Возвращает количество объявленных пространств имен в этом событии START_ELEMENT или END_ELEMENT. Этот метод валиден только для START_ELEMENT, END_ELEMENT или NAMESPACE.
String getNamespacePrefix(int index)
Возвращает префикс для объявленного пространства имен по индексу.
String getNamespaceURI()
Если текущее событие является START_ELEMENT или END_ELEMENT, этот метод возвращает URI префикса или пространства имен по умолчанию.
String getNamespaceURI(int index)
Возвращает URI для объявленного пространства имён по индексу.
String getNamespaceURI(String prefix)
Возвращает URI для заданного префикса.
String getPIData()
Получает раздел данных инструкции обработки.
String getPITarget()
Получает целевое значение инструкции обработки.
String getPrefix()
Возвращает префикс текущего события или null, если событие не имеет префикса.
Object getProperty(String name)
Получает значение функции/свойства из базовой реализации.
String getText()
Возвращает текущее значение события разбора в виде строки. Возвращает строковое значение события CHARACTERS, значение комментария, замещающее значение ENTITY_REFERENCE, строковое значение раздела CDATA, строковое значение события SPACE или строковое значение внутреннего подмножества DTD.
char[] getTextCharacters()
Возвращает массив, содержащий символы из этого события.
int getTextCharacters(int sourceStart, char[] target, int targetStart, int length)
Получает текст, связанный с событием CHARACTERS, SPACE или CDATA.
int getTextLength()
Возвращает длину последовательности символов для этого текстового события в массиве символов текста.
int getTextStart()
Возвращает смещение в массиве символов текста, где хранится первый символ (этого текстового события).
String getVersion()
Получает объявленную версию XML в XML-декларации. Возвращает null, если версия не была объявлена.
boolean hasName()
Возвращает логическое значение, указывающее, имеет ли текущее событие имя (является ли оно START_ELEMENT или END_ELEMENT).
boolean hasNext()
Возвращает true, если существуют другие события разбора, и false, если событий больше нет.
boolean hasText()
Возвращает логическое значение, указывающее, содержит ли текущее событие текст.
boolean isAttributeSpecified(int index)
Возвращает true, если этот атрибут был создан по умолчанию.
boolean isCharacters()
Возвращает true, если курсор указывает на событие данных символов.
boolean isEndElement()
Возвращает true, если курсор указывает на закрывающий тег (в противном случае false).
boolean isStandalone()
Получает объявленное значение автономности из XML-декларации.
boolean isStartElement()
Возвращает true, если курсор указывает на открывающий тег (в противном случае false).
boolean isWhiteSpace()
Возвращает true, если курсор указывает на событие данных символов, состоящее только из пробелов.
int next()
Получает следующее событие разбора. Процессор может вернуть все смежные данные символов в одном блоке или разделить их на несколько.
int nextTag()
Пропускает любые пробелы (isWhiteSpace() возвращает true), комментарии или инструкции обработки до тех пор, пока не будет достигнут START_ELEMENT или END_ELEMENT.
void require(int type, String namespaceURI, String localName)
Проверяет, является ли текущее событие заданного типа, и совпадают ли пространство имён и имя с текущим пространством имён и именем текущего события.
boolean standaloneSet()
Проверяет, была ли установлена автономность в документе.

Подробное описание методов

getProperty

Object getProperty(String name) throws IllegalArgumentException
Получить значение атрибута/свойства из реализации
Параметры:
name - Имя свойства, не может быть null
Возвращает:
Значение свойства
Исключение:
IllegalArgumentException - если имя равно null

next

int next() throws XMLStreamException
Получить следующий парсинг-событие - процессор может вернуть все смежные данные символов в одном куске, или он может разбить их на несколько частей. Если свойство javax.xml.stream.isCoalescing установлено в true, содержимое элемента должно быть слито, и для непрерывного содержимого элемента или секций CDATA должно быть возвращено только одно событие CHARACTERS. По умолчанию ссылки на сущности должны быть расширены и прозрачно сообщены приложению. Исключение будет выброшено, если ссылка на сущность не может быть расширена. Если содержимое элемента пусто (т.е. содержимое ""), то событие CHARACTERS не будет сообщено.

Учитывая следующий XML:
<foo><!--description-->content text<![CDATA[<greeting>Hello>/greeting>]]>other content>/foo>
Поведение вызова next() при нахождении на foo будет следующим:
1- комментарий (COMMENT)
2- затем раздел символов (CHARACTERS)
3- затем раздел CDATA (ещё один CHARACTERS)
4- затем следующий раздел символов (ещё один CHARACTERS)
5- затем END_ELEMENT

ПРИМЕЧАНИЕ: пустой элемент (например, <tag/>) будет сообщён с двумя отдельными событиями: START_ELEMENT, END_ELEMENT - Это сохраняет эквивалентность парсинга пустого элемента с <tag></tag>.

Возвращает:
целочисленный код, соответствующий текущему событию парсинга
Исключение:
NoSuchElementException - если это вызов, когда hasNext() возвращает false
XMLStreamException - если при обработке исходного XML-источника произошла ошибка
См. также:
  • XMLEvent

require

void require(int type, String namespaceURI, String localName) throws XMLStreamException
Проверка, является ли текущее событие заданного типа, и соответствуют ли пространство имен и имя текущему пространству имен и имени текущего события. Если namespaceURI равно null, оно не проверяется на равенство; если localName равно null, оно не проверяется на равенство.
Параметры:
type - тип события
namespaceURI - пространство имён события, может быть null
localName - локальное имя события, может быть null
Исключение:
XMLStreamException - если необходимые значения не совпадают.

getElementText

String getElementText() throws XMLStreamException
Чтение содержимого элемента, содержащего только текст; исключение выбрасывается, если это не элемент, содержащий только текст. Независимо от значения javax.xml.stream.isCoalescing этот метод всегда возвращает объединённое содержимое.
Предварительное условие: текущее событие - START_ELEMENT.
Последующее условие: текущее событие - соответствующее END_ELEMENT.
Метод выполняет следующее (реализации могут быть оптимизированы, но должны выполнять эквивалентную обработку):
 if(getEventType() != XMLStreamConstants.START_ELEMENT) {
     throw new XMLStreamException(
     "parser must be on START_ELEMENT to read next text", getLocation());
 }

 int eventType = next();
 StringBuffer content = new StringBuffer();
 while(eventType != XMLStreamConstants.END_ELEMENT) {
     if(eventType == XMLStreamConstants.CHARACTERS
        || eventType == XMLStreamConstants.CDATA
        || eventType == XMLStreamConstants.SPACE
        || eventType == XMLStreamConstants.ENTITY_REFERENCE) {
           buf.append(getText());
     } else if(eventType == XMLStreamConstants.PROCESSING_INSTRUCTION
               || eventType == XMLStreamConstants.COMMENT) {
         // skipping
     } else if(eventType == XMLStreamConstants.END_DOCUMENT) {
         throw new XMLStreamException(
         "unexpected end of document when reading element text content", this);
     } else if(eventType == XMLStreamConstants.START_ELEMENT) {
         throw new XMLStreamException(
         "element text content may not contain START_ELEMENT", getLocation());
     } else {
         throw new XMLStreamException(
         "Unexpected event type "+eventType, getLocation());
     }
     eventType = next();
 }
 return buf.toString();
 
Возвращает:
содержимое элемента, содержащего только текст
Исключение:
XMLStreamException - если текущее событие не START_ELEMENT или встречается элемент, не содержащий текст

nextTag

int nextTag() throws XMLStreamException
Пропускает все пробелы (isWhiteSpace() возвращает true), COMMENT или PROCESSING_INSTRUCTION, пока не будет достигнут START_ELEMENT или END_ELEMENT. Если обнаружены другие символы, кроме пробелов, COMMENT, PROCESSING_INSTRUCTION, START_ELEMENT или END_ELEMENT, выбрасывается исключение. Этот метод следует использовать при обработке содержимого только элементов, разделённого пробелами.
Предварительное условие: нет
Последующее условие: текущее событие - START_ELEMENT или END_ELEMENT, и курсор может быть смещён над любым событием пробела.
В сущности, он выполняет следующее (реализации могут быть оптимизированы, но должны выполнять эквивалентную обработку):
 
 int eventType = next();
 while((eventType == XMLStreamConstants.CHARACTERS && isWhiteSpace()) // skip whitespace
 || (eventType == XMLStreamConstants.CDATA && isWhiteSpace())
 // skip whitespace
 || eventType == XMLStreamConstants.SPACE
 || eventType == XMLStreamConstants.PROCESSING_INSTRUCTION
 || eventType == XMLStreamConstants.COMMENT
 ) {
     eventType = next();
 }
 if (eventType != XMLStreamConstants.START_ELEMENT && eventType != XMLStreamConstants.END_ELEMENT) {
     throw new String XMLStreamException("expected start or end tag", getLocation());
 }
 return eventType; 
 
Возвращает:
тип события элемента (START_ELEMENT или END_ELEMENT)
Исключение:
XMLStreamException - если текущее событие не является пробелом, PROCESSING_INSTRUCTION, START_ELEMENT или END_ELEMENT
NoSuchElementException - если это вызов, когда hasNext() возвращает false

hasNext

boolean hasNext() throws XMLStreamException
Возвращает true, если есть дополнительные парсинговые события, и false, если событий больше нет. Этот метод вернёт false, если текущее состояние XMLStreamReader - END_DOCUMENT
Возвращает:
true, если есть дополнительные события; иначе false
Исключение:
XMLStreamException - если при обнаружении следующего состояния произошла критическая ошибка

close

void close() throws XMLStreamException
Освобождает все ресурсы, связанные с этим читателем. Этот метод не закрывает исходный входной поток.
Исключение:
XMLStreamException - если при освобождении связанных ресурсов произошли ошибки

getNamespaceURI

String getNamespaceURI(String prefix)
Возвращает пространство имён для данного префикса. Возвращаемое пространство имён зависит от текущего состояния процессора.

ПРИМЕЧАНИЕ: Префикс 'xml' связан, как определено в спецификации Namespaces in XML, со значением "http://www.w3.org/XML/1998/namespace".

ПРИМЕЧАНИЕ: Префикс 'xmlns' должен быть разрешён в соответствии со следующим пространством имён http://www.w3.org/2000/xmlns/

Параметры:
prefix - Префикс для поиска, не может быть null
Возвращает:
пространство имён, связанное с данным префиксом, или null, если оно не связано
Исключение:
IllegalArgumentException - если префикс равен null

isStartElement

boolean isStartElement()
Возвращает true, если курсор указывает на открывающий тег (иначе false)
Возвращает:
true, если курсор указывает на открывающий тег; иначе false

isEndElement

boolean isEndElement()
Возвращает true, если курсор указывает на закрывающий тег (иначе false)
Возвращает:
true, если курсор указывает на закрывающий тег; иначе false

isCharacters

boolean isCharacters()
Возвращает true, если курсор указывает на событие данных символов
Возвращает:
true, если курсор указывает на данные символов; иначе false

isWhiteSpace

boolean isWhiteSpace()
Возвращает true, если курсор указывает на событие данных символов, состоящее только из пробелов
Возвращает:
true, если курсор указывает на все пробелы; иначе false

getAttributeValue

String getAttributeValue(String namespaceURI, String localName)
Возвращает нормализованное значение атрибута с заданным пространством имён и локальным именем. Если namespaceURI равно null, пространство имён не проверяется на равенство.
Параметры:
namespaceURI - пространство имён атрибута
localName - локальное имя атрибута, не может быть null
Возвращает:
значение атрибута; возвращает null, если не найден
Исключение:
IllegalStateException - если это не START_ELEMENT или ATTRIBUTE

getAttributeCount

int getAttributeCount()
Возвращает количество атрибутов в START_ELEMENT; этот метод действителен только для START_ELEMENT или ATTRIBUTE. Это количество не включает определения пространств имён. Индексы атрибутов нумеруются с нуля.
Возвращает:
количество атрибутов
Исключение:
IllegalStateException - если это не START_ELEMENT или ATTRIBUTE

getAttributeName

QName getAttributeName(int index)
Возвращает qname атрибута в заданном индексе
Параметры:
index - позиция атрибута
Возвращает:
QName атрибута
Исключение:
IllegalStateException - если это не START_ELEMENT или ATTRIBUTE

getAttributeNamespace

String getAttributeNamespace(int index)
Возвращает пространство имён атрибута в заданном индексе
Параметры:
index - позиция атрибута
Возвращает:
URI пространства имён (может быть null)
Исключение:
IllegalStateException - если это не START_ELEMENT или ATTRIBUTE

getAttributeLocalName

String getAttributeLocalName(int index)
Возвращает локальное имя атрибута в заданном индексе
Параметры:
index - позиция атрибута
Возвращает:
локальное имя атрибута
Исключение:
IllegalStateException - если это не START_ELEMENT или ATTRIBUTE

getAttributePrefix

String getAttributePrefix(int index)
Возвращает префикс этого атрибута в заданном индексе
Параметры:
index - позиция атрибута
Возвращает:
префикс атрибута
Исключение:
IllegalStateException - если это не START_ELEMENT или ATTRIBUTE

getAttributeType

String getAttributeType(int index)
Возвращает XML тип атрибута по заданному индексу
Параметры:
index - позиция атрибута
Возвращает:
XML тип атрибута
Выбрасывает:
IllegalStateException - если это не START_ELEMENT или ATTRIBUTE

getAttributeValue

String getAttributeValue(int index)
Возвращает значение атрибута по индексу
Параметры:
index - позиция атрибута
Возвращает:
значение атрибута
Выбрасывает:
IllegalStateException - если это не START_ELEMENT или ATTRIBUTE

isAttributeSpecified

boolean isAttributeSpecified(int index)
Возвращает булево значение, указывающее, был ли этот атрибут создан по умолчанию
Параметры:
index - позиция атрибута
Возвращает:
true, если это атрибут по умолчанию
Выбрасывает:
IllegalStateException - если это не START_ELEMENT или ATTRIBUTE

getNamespaceCount

int getNamespaceCount()
Возвращает количество объявленных пространств имён в данном START_ELEMENT или END_ELEMENT. Этот метод валиден только для START_ELEMENT, END_ELEMENT или NAMESPACE. В случае END_ELEMENT возвращает количество пространств имён, которые скоро выйдут из области видимости. Эквивалентно информации, возвращаемой обратным вызовом SAX для события закрытия элемента.
Возвращает:
количество объявленных пространств имён в элементе
Выбрасывает:
IllegalStateException - если это не START_ELEMENT, END_ELEMENT или NAMESPACE

getNamespacePrefix

String getNamespacePrefix(int index)
Возвращает префикс для пространства имён, объявленного по индексу. Возвращает null, если это объявление пространства имён по умолчанию.
Параметры:
index - позиция объявления пространства имён
Возвращает:
префикс пространства имён
Выбрасывает:
IllegalStateException - если это не START_ELEMENT, END_ELEMENT или NAMESPACE

getNamespaceURI

String getNamespaceURI(int index)
Возвращает URI для пространства имён, объявленного по индексу.
Параметры:
index - позиция объявления пространства имён
Возвращает:
URI пространства имён
Выбрасывает:
IllegalStateException - если это не START_ELEMENT, END_ELEMENT или NAMESPACE

getNamespaceContext

NamespaceContext getNamespaceContext()
Возвращает контекст пространства имён для текущей позиции. Контекст временный и валиден только до вызова next(), изменяющего состояние ридера.
Возвращает:
контекст пространства имён

getEventType

int getEventType()
Возвращает целочисленный код, указывающий тип события, на которое указывает курсор. Начальный тип события - XMLStreamConstants.START_DOCUMENT.
Возвращает:
тип текущего события

getText

String getText()
Возвращает текущее значение события парсинга в виде строки. Возвращает строковое значение события CHARACTERS, COMMENT, значение замены для ENTITY_REFERENCE, строковое значение раздела CDATA, строковое значение события SPACE или строковое значение внутреннего подмножества DTD. Если ENTITY_REFERENCE была разрешена, любая текстовая информация будет сообщена как события CHARACTERS.
Возвращает:
текущий текст или null
Выбрасывает:
IllegalStateException - если состояние не является допустимым текстовым состоянием.

getTextCharacters

char[] getTextCharacters()
Возвращает массив, содержащий символы из этого события. Этот массив должен рассматриваться как неизменяемый и временный. Массив будет содержать символы текста до тех пор, пока XMLStreamReader не перейдёт к следующему событию. Попытки сохранить массив символов после этого момента или изменить его содержимое нарушают контракт данного интерфейса.
Возвращает:
текущий текст или пустой массив
Выбрасывает:
IllegalStateException - если состояние не является допустимым текстовым состоянием.

getTextCharacters

int getTextCharacters(int sourceStart, char[] target, int targetStart, int length) throws XMLStreamException
Получает текст, связанный с событием CHARACTERS, SPACE или CDATA. Текст, начиная с "sourceStart", копируется в "target", начиная с "targetStart". Копируется до "length" символов. Возвращается количество скопированных символов. Аргумент "sourceStart" должен быть больше или равен 0 и меньше или равен количеству символов, связанных с событием. Обычно запрашивается текст, начинающийся с "sourceStart" равным 0. Если фактически скопировано меньше символов, чем "length", то больше текста нет. В противном случае необходимо выполнить последующие вызовы до извлечения всего текста. Например:

 int length = 1024;
 char[] myBuffer = new char[ length ];

 for ( int sourceStart = 0 ; ; sourceStart += length )
 {
    int nCopied = stream.getTextCharacters( sourceStart, myBuffer, 0, length );

   if (nCopied < length)
       break;
 }
  
XMLStreamException может быть выброшен, если в базовом источнике есть XML-ошибки. Аргумент "targetStart" должен быть больше или равен 0 и меньше длины "target". Length должен быть больше 0, а "targetStart + length" должно быть меньше или равно длине "target".
Параметры:
sourceStart - индекс первого символа в исходном массиве для копирования
target - целевой массив
targetStart - начальный смещение в целевом массиве
length - количество символов для копирования
Возвращает:
количество фактически скопированных символов
Выбрасывает:
XMLStreamException - если базовый XML-источник не имеет правильного формата
IndexOutOfBoundsException - если targetStart < 0 или > длины target
IndexOutOfBoundsException - если length < 0 или targetStart + length > длины target
UnsupportedOperationException - если этот метод не поддерживается
NullPointerException - если target равно null

getTextStart

int getTextStart()
Возвращает смещение в массиве символов текста, где хранится первый символ (этого события текста).
Возвращает:
начальная позиция текста в массиве символов
Выбрасывает:
IllegalStateException - если состояние не является допустимым текстовым состоянием.

getTextLength

int getTextLength()
Возвращает длину последовательности символов для данного события Text в массиве символов текста.
Возвращает:
длина текста
Выбрасывает:
IllegalStateException - если состояние не является допустимым текстовым состоянием.

getEncoding

String getEncoding()
Возвращает кодировку ввода, если она известна, или null, если неизвестна.
Возвращает:
кодировка данного экземпляра или null

hasText

boolean hasText()
Возвращает булево значение, указывающее, содержит ли текущее событие текст. Следующие события имеют текст: CHARACTERS, DTD, ENTITY_REFERENCE, COMMENT, SPACE.
Возвращает:
true, если событие содержит текст, false в противном случае

getLocation

Location getLocation()
Возвращает текущее расположение процессора. Если расположение неизвестно, процессор должен вернуть реализацию Location, которая возвращает -1 для расположения и null для publicId и systemId. Информация о расположении валидна только до вызова next().
Возвращает:
расположение курсора

getName

QName getName()
Возвращает QName для текущего события START_ELEMENT или END_ELEMENT.
Возвращает:
QName для текущего события START_ELEMENT или END_ELEMENT
Выбрасывает:
IllegalStateException - если это не START_ELEMENT или END_ELEMENT

getLocalName

String getLocalName()
Возвращает локальное имя текущего события. Для START_ELEMENT или END_ELEMENT возвращает локальное имя текущего элемента. Для ENTITY_REFERENCE возвращает имя сущности. Текущее событие должно быть START_ELEMENT или END_ELEMENT, или ENTITY_REFERENCE
Возвращает:
локальное имя
Выбрасывает:
IllegalStateException - если это не START_ELEMENT, END_ELEMENT или ENTITY_REFERENCE

hasName

boolean hasName()
Возвращает булево значение, указывающее, имеет ли текущее событие имя (является START_ELEMENT или END_ELEMENT).
Возвращает:
true, если событие имеет имя, false в противном случае

getNamespaceURI

String getNamespaceURI()
Если текущее событие - START_ELEMENT или END_ELEMENT, этот метод возвращает URI префикса или пространства имён по умолчанию. Возвращает null, если событие не имеет префикса.
Возвращает:
URI, связанный с префиксом этого элемента, пространством имён по умолчанию или null

getPrefix

String getPrefix()
Возвращает префикс текущего события или null, если событие не имеет префикса
Возвращает:
префикс или null

getVersion

String getVersion()
Получить объявленную версию XML в декларации XML. Возвращает null, если она не была объявлена.
Возвращает:
версию XML или null

isStandalone

boolean isStandalone()
Получить объявление автономности из декларации XML.
Возвращает:
true, если автономно, или false в противном случае

standaloneSet

boolean standaloneSet()
Проверяет, было ли установлено значение standalone в документе.
Возвращает:
true, если standalone было установлено в документе, или false в противном случае

getCharacterEncodingScheme

String getCharacterEncodingScheme()
Возвращает кодировку символов, объявленную в декларации XML. Возвращает null, если она не была объявлена.
Возвращает:
кодировку, объявленную в документе, или null

getPITarget

String getPITarget()
Получить целевой элемент инструкции обработки.
Возвращает:
целевой элемент или null

getPIData

String getPIData()
Получить раздел данных инструкции обработки.
Возвращает:
данные или null

© 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://download.java.net/java/early_access/jdk24/docs/api/java.xml/javax/xml/stream/XMLStreamReader.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API