Spec-Zone.ru › OpenJDK 25

Интерфейс XMLStreamWriter

public interface XMLStreamWriter
Интерфейс XMLStreamWriter определяет способ записи XML. XMLStreamWriter не проверяет корректность входных данных. Однако метод writeCharacters должен экранировать &, < и >. Для значений атрибутов метод writeAttribute экранирует перечисленные выше символы, а также " для обеспечения корректности всего текстового содержимого и значений атрибутов. Каждое пространство имён и каждый атрибут должны записываться отдельно.
Пространства имён XML, javax.xml.stream.isRepairingNamespaces и поведение методов записи
Метод isRepairingNamespaces == true isRepairingNamespaces == false
namespaceURI связан namespaceURI не связан namespaceURI связан namespaceURI не связан
writeAttribute(namespaceURI, localName, value) prefix:localName="value" [1] xmlns:{generated}="namespaceURI" {generated}:localName="value" prefix:localName="value" [1] XMLStreamException
writeAttribute(prefix, namespaceURI, localName, value) связан с тем же префиксом:
prefix:localName="value" [1]

связан с другим префиксом:
xmlns:{generated}="namespaceURI" {generated}:localName="value"
xmlns:prefix="namespaceURI" prefix:localName="value" [3] связан с тем же префиксом:
prefix:localName="value" [1][2]

связан с другим префиксом:
XMLStreamException[2]
xmlns:prefix="namespaceURI" prefix:localName="value" [2][5]
writeStartElement(namespaceURI, localName)

writeEmptyElement(namespaceURI, localName)
<prefix:localName> [1] <{generated}:localName xmlns:{generated}="namespaceURI"> prefix:localName> [1] XMLStreamException
writeStartElement(prefix, localName, namespaceURI)

writeEmptyElement(prefix, localName, namespaceURI)
связан с тем же префиксом:
<prefix:localName> [1]

связан с другим префиксом:
<{generated}:localName xmlns:{generated}="namespaceURI">
<prefix:localName xmlns:prefix="namespaceURI"> [4] связан с тем же префиксом:
<prefix:localName> [1]

связан с другим префиксом:
XMLStreamException
<prefix:localName>
Примечания:
  • [1] если namespaceURI == URI пространства имён по умолчанию, префикс не записывается
  • [2] если prefix == "" || null && namespaceURI == "", префикс или объявление пространства имён не создаётся и не записывается
  • [3] если prefix == "" || null, префикс генерируется случайным образом
  • [4] если prefix == "" || null, он рассматривается как пространство имён по умолчанию, префикс не создаётся и не записывается; если namespaceURI не связан, создаётся и записывается объявление xmlns
  • [5] если prefix == "" || null, это рассматривается как недопустимая попытка определить пространство имён по умолчанию, и возникает XMLStreamException
Начиная с:
1.6
См. также:
  • XMLOutputFactory
  • XMLStreamReader

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

Модификатор и тип Метод Описание
void close()
Закрывает этот модуль записи и освобождает связанные с ним ресурсы.
void flush()
Записывает все кэшированные данные в нижележащий механизм вывода.
NamespaceContext getNamespaceContext()
Возвращает текущий контекст пространства имён.
String getPrefix(String uri)
Возвращает префикс, с которым связан URI.
Object getProperty(String name)
Возвращает значение функции или свойства нижележащей реализации
void setDefaultNamespace(String uri)
Связывает URI с пространством имён по умолчанию. Этот URI связывается в области действия текущей пары START_ELEMENT / END_ELEMENT.
void setNamespaceContext(NamespaceContext context)
Задаёт текущий контекст пространства имён для связей префиксов и URI.
void setPrefix(String prefix, String uri)
Задаёт префикс, с которым связан URI.
void writeAttribute(String localName, String value)
Записывает атрибут в выходной поток без префикса.
void writeAttribute(String namespaceURI, String localName, String value)
Записывает атрибут в выходной поток
void writeAttribute(String prefix, String namespaceURI, String localName, String value)
Записывает атрибут в выходной поток
void writeCData(String data)
Записывает секцию CData
void writeCharacters(char[] text, int start, int len)
Записывает текст в выходной поток
void writeCharacters(String text)
Записывает текст в выходной поток
void writeComment(String data)
Записывает комментарий XML с указанными данными
void writeDefaultNamespace(String namespaceURI)
Записывает пространство имён по умолчанию в поток
void writeDTD(String dtd)
Записывает секцию DTD.
void writeEmptyElement(String localName)
Записывает в выходной поток тег пустого элемента
void writeEmptyElement(String namespaceURI, String localName)
Записывает в выходной поток тег пустого элемента
void writeEmptyElement(String prefix, String localName, String namespaceURI)
Записывает в выходной поток тег пустого элемента
void writeEndDocument()
Закрывает все открытые начальные теги и записывает соответствующие конечные теги.
void writeEndElement()
Записывает конечный тег в выходной поток, используя внутреннее состояние модуля записи для определения префикса и локального имени события.
void writeEntityRef(String name)
Записывает ссылку на сущность
void writeNamespace(String prefix, String namespaceURI)
Записывает пространство имён в выходной поток. Если аргумент prefix этого метода — пустая строка, "xmlns" или null, метод делегирует вызов writeDefaultNamespace
void writeProcessingInstruction(String target)
Записывает инструкцию обработки
void writeProcessingInstruction(String target, String data)
Записывает инструкцию обработки
void writeStartDocument()
Записывает объявление XML.
void writeStartDocument(String version)
Записывает объявление XML.
void writeStartDocument(String encoding, String version)
Записывает объявление XML.
void writeStartElement(String localName)
Записывает начальный тег в выходной поток.
void writeStartElement(String namespaceURI, String localName)
Записывает начальный тег в выходной поток
void writeStartElement(String prefix, String localName, String namespaceURI)
Записывает начальный тег в выходной поток

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

writeStartElement

void writeStartElement(String localName) throws XMLStreamException
Записывает начальный тег в выходной поток. Все методы writeStartElement открывают новую область действия во внутреннем контексте пространства имён. Запись соответствующего EndElement закрывает эту область.
Параметры:
localName — локальное имя тега; не может быть null
Исключения:
XMLStreamException — если возникает ошибка

writeStartElement

void writeStartElement(String namespaceURI, String localName) throws XMLStreamException
Записывает начальный тег в выходной поток
Параметры:
namespaceURI — namespaceURI используемого префикса; не может быть null
localName — локальное имя тега; не может быть null
Исключения:
XMLStreamException — если URI пространства имён не связан с префиксом, а javax.xml.stream.isRepairingNamespaces не задано в true

writeStartElement

void writeStartElement(String prefix, String localName, String namespaceURI) throws XMLStreamException
Записывает начальный тег в выходной поток
Параметры:
prefix — префикс тега; не может быть null
localName — локальное имя тега; не может быть null
namespaceURI — URI, с которым связывается префикс; не может быть null
Исключения:
XMLStreamException — если возникает ошибка

writeEmptyElement

void writeEmptyElement(String namespaceURI, String localName) throws XMLStreamException
Записывает в выходной поток тег пустого элемента
Параметры:
namespaceURI — URI, с которым связывается тег; не может быть null
localName — локальное имя тега; не может быть null
Исключения:
XMLStreamException — если URI пространства имён не связан с префиксом, а javax.xml.stream.isRepairingNamespaces не задано в true

writeEmptyElement

void writeEmptyElement(String prefix, String localName, String namespaceURI) throws XMLStreamException
Записывает в выходной поток тег пустого элемента
Параметры:
prefix — префикс тега; не может быть null
localName — локальное имя тега; не может быть null
namespaceURI — URI, с которым связывается тег; не может быть null
Исключения:
XMLStreamException — если возникает ошибка

writeEmptyElement

void writeEmptyElement(String localName) throws XMLStreamException
Записывает в выходной поток тег пустого элемента
Параметры:
localName — локальное имя тега; не может быть null
Исключения:
XMLStreamException — если возникает ошибка

writeEndElement

void writeEndElement() throws XMLStreamException
Записывает конечный тег в выходной поток, используя внутреннее состояние модуля записи для определения префикса и локального имени события.
Исключения:
XMLStreamException — если возникает ошибка

writeEndDocument

void writeEndDocument() throws XMLStreamException
Закрывает все открытые начальные теги и записывает соответствующие конечные теги.
Исключения:
XMLStreamException — если возникает ошибка

close

void close() throws XMLStreamException
Закрывает этот модуль записи и освобождает связанные с ним ресурсы. При этом нижележащий выходной поток закрываться не должен.
Исключения:
XMLStreamException — если возникает ошибка

flush

void flush() throws XMLStreamException
Записывает все кэшированные данные в нижележащий механизм вывода.
Исключения:
XMLStreamException — если возникает ошибка

writeAttribute

void writeAttribute(String localName, String value) throws XMLStreamException
Записывает атрибут в выходной поток без префикса.
Параметры:
localName — локальное имя атрибута
value — значение атрибута
Исключения:
IllegalStateException — если текущее состояние не позволяет записывать атрибуты
XMLStreamException — если возникает ошибка

writeAttribute

void writeAttribute(String prefix, String namespaceURI, String localName, String value) throws XMLStreamException
Записывает атрибут в выходной поток
Параметры:
prefix — префикс этого атрибута
namespaceURI — URI префикса этого атрибута
localName — локальное имя атрибута
value — значение атрибута
Исключения:
IllegalStateException — если текущее состояние не позволяет записывать атрибуты
XMLStreamException — если URI пространства имён не связан с префиксом, а javax.xml.stream.isRepairingNamespaces не задано в true

writeAttribute

void writeAttribute(String namespaceURI, String localName, String value) throws XMLStreamException
Записывает атрибут в выходной поток
Параметры:
namespaceURI — URI префикса этого атрибута
localName — локальное имя атрибута
value — значение атрибута
Исключения:
IllegalStateException — если текущее состояние не позволяет записывать атрибуты
XMLStreamException — если URI пространства имён не связан с префиксом, а javax.xml.stream.isRepairingNamespaces не задано в true

writeNamespace

void writeNamespace(String prefix, String namespaceURI) throws XMLStreamException
Записывает пространство имён в выходной поток. Если аргумент prefix этого метода — пустая строка, "xmlns" или null, метод делегирует вызов writeDefaultNamespace
Параметры:
prefix — префикс, с которым связывается это пространство имён
namespaceURI — URI, с которым связывается префикс
Исключения:
IllegalStateException — если текущее состояние не позволяет записывать пространства имён
XMLStreamException — если возникает ошибка

writeDefaultNamespace

void writeDefaultNamespace(String namespaceURI) throws XMLStreamException
Записывает пространство имён по умолчанию в поток
Параметры:
namespaceURI — URI, с которым связывается пространство имён по умолчанию
Исключения:
IllegalStateException — если текущее состояние не позволяет записывать пространства имён
XMLStreamException — если возникает ошибка

writeComment

void writeComment(String data) throws XMLStreamException
Записывает комментарий XML с указанными данными
Параметры:
data — данные комментария; могут быть null
Исключения:
XMLStreamException — если возникает ошибка

writeProcessingInstruction

void writeProcessingInstruction(String target) throws XMLStreamException
Записывает инструкцию обработки
Параметры:
target — цель инструкции обработки; не может быть null
Исключения:
XMLStreamException — если возникает ошибка

writeProcessingInstruction

void writeProcessingInstruction(String target, String data) throws XMLStreamException
Записывает инструкцию обработки
Параметры:
target — цель инструкции обработки; не может быть null
data — данные инструкции обработки; не могут быть null
Исключения:
XMLStreamException — если возникает ошибка

writeCData

void writeCData(String data) throws XMLStreamException
Записывает секцию CData
Параметры:
data — данные секции CData; не могут быть null
Исключения:
XMLStreamException — если возникает ошибка

writeDTD

void writeDTD(String dtd) throws XMLStreamException
Записывает секцию DTD. Эта строка представляет собой всю продукцию doctypedecl из спецификации XML 1.0.
Параметры:
dtd — записываемый DTD
Исключения:
XMLStreamException — если возникает ошибка

writeEntityRef

void writeEntityRef(String name) throws XMLStreamException
Записывает ссылку на сущность
Параметры:
name — имя сущности
Исключения:
XMLStreamException — если возникает ошибка

writeStartDocument

void writeStartDocument() throws XMLStreamException
Записывает объявление XML. По умолчанию версия XML равна 1.0, а кодировка — utf-8
Исключения:
XMLStreamException — если возникает ошибка

writeStartDocument

void writeStartDocument(String version) throws XMLStreamException
Записывает объявление XML. По умолчанию версия XML равна 1.0
Параметры:
version — версия XML-документа
Исключения:
XMLStreamException — если возникает ошибка

writeStartDocument

void writeStartDocument(String encoding, String version) throws XMLStreamException
Записывает объявление XML. Обратите внимание: параметр encoding не задаёт фактическую кодировку нижележащего выходного потока. Она должна быть задана при создании экземпляра XMLStreamWriter с помощью XMLOutputFactory
Параметры:
encoding — кодировка объявления XML
version — версия XML-документа
Исключения:
XMLStreamException — если указанная кодировка не соответствует кодировке нижележащего потока

writeCharacters

void writeCharacters(String text) throws XMLStreamException
Записывает текст в выходной поток
Параметры:
text — записываемое значение
Исключения:
XMLStreamException — если возникает ошибка

writeCharacters

void writeCharacters(char[] text, int start, int len) throws XMLStreamException
Записывает текст в выходной поток
Параметры:
text — записываемое значение
start — начальная позиция в массиве
len — количество записываемых символов
Исключения:
XMLStreamException — если возникает ошибка

getPrefix

String getPrefix(String uri) throws XMLStreamException
Возвращает префикс, с которым связан URI.
Параметры:
uri — URI, с которым связан префикс
Возвращает:
префикс или null
Исключения:
XMLStreamException — если возникает ошибка

setPrefix

void setPrefix(String prefix, String uri) throws XMLStreamException
Задаёт префикс, с которым связан URI. Этот префикс связывается в области действия текущей пары START_ELEMENT / END_ELEMENT. Если этот метод вызван до записи START_ELEMENT, префикс связывается в корневой области.
Параметры:
prefix — префикс, связываемый с URI; не может быть null
uri — URI, связываемый с префиксом; может быть null
Исключения:
XMLStreamException — если возникает ошибка

setDefaultNamespace

void setDefaultNamespace(String uri) throws XMLStreamException
Связывает URI с пространством имён по умолчанию. Этот URI связывается в области действия текущей пары START_ELEMENT / END_ELEMENT. Если этот метод вызван до записи START_ELEMENT, URI связывается в корневой области.
Параметры:
uri — URI, связываемый с пространством имён по умолчанию; может быть null
Исключения:
XMLStreamException — если возникает ошибка

setNamespaceContext

void setNamespaceContext(NamespaceContext context) throws XMLStreamException
Задаёт текущий контекст пространства имён для связей префиксов и URI. Этот контекст становится корневым контекстом пространства имён для записи и заменяет текущий корневой контекст пространства имён. Последующие вызовы setPrefix и setDefaultNamespace будут связывать пространства имён, используя переданный методу контекст как корневой контекст для разрешения пространств имён. Этот метод можно вызвать только один раз в начале документа. Он не приводит к объявлению пространств имён. Если в контексте пространства имён найдена связь URI пространства имён с префиксом, она считается объявленной, и StreamWriter может использовать этот префикс.
Параметры:
context — контекст пространства имён, используемый этим модулем записи; не может быть null
Исключения:
XMLStreamException — если возникает ошибка

getNamespaceContext

NamespaceContext getNamespaceContext()
Возвращает текущий контекст пространства имён.
Возвращает:
текущий NamespaceContext

getProperty

Object getProperty(String name) throws IllegalArgumentException
Возвращает значение функции или свойства нижележащей реализации
Параметры:
name — имя свойства; не может быть null
Возвращает:
значение свойства
Исключения:
IllegalArgumentException — если свойство не поддерживается
NullPointerException — если имя равно null

Сообщить об ошибке или предложить улучшение
Дополнительную справочную информацию по API и документацию для разработчиков см. в документации Java SE, содержащей более подробные описания для разработчиков, обзоры концепций, определения терминов, способы обхода проблем и примеры кода. Другие версии.
Java является товарным знаком или зарегистрированным товарным знаком Oracle и/или её аффилированных лиц в США и других странах.
Авторские права © 1993, 2025, Oracle и/или её аффилированные лица, 500 Oracle Parkway, Redwood Shores, CA 94065 USA.
Все права защищены. Использование регулируется условиями лицензии и политикой распространения документации.

© 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/javax/xml/stream/XMLStreamWriter.html

Spec-Zone.ru

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