Spec-Zone.ru › OpenJDK 8

Интерфейс XMLStreamWriter


public interface XMLStreamWriter

Интерфейс XMLStreamWriter определяет способ записи XML. XMLStreamWriter не выполняет проверку корректности входных данных. Однако метод writeCharacters обязан экранировать &, < и >. Для значений атрибутов метод writeAttribute будет экранировать вышеперечисленные символы плюс " для обеспечения корректности всего содержимого символов и значений атрибутов. Каждый NAMESPACE и ATTRIBUTE должен быть записан индивидуально.

XML пространства имён, javax.xml.stream.isRepairingNamespaces и поведение метода write
Метод isRepairingNamespaces == true isRepairingNamespaces == false
namespaceURI привязано namespaceURI не привязано namespaceURI привязано namespaceURI не привязано
writeAttribute(namespaceURI, localName, value) prefix:localName="значение" [1] xmlns:{генерируемый}="namespaceURI" {генерируемый}:localName="значение" prefix:localName="значение" [1] XMLStreamException
writeAttribute(prefix, namespaceURI, localName, value) привязано к тому же префиксу:
prefix:localName="значение" [1]

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

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

writeEmptyElement(namespaceURI, localName)
<prefix:localName> [1] <{генерируемый}:localName xmlns:{генерируемый}="namespaceURI"> <prefix:localName> [1] XMLStreamException
writeStartElement(prefix, localName, namespaceURI)

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

привязано к другому префиксу:
<{генерируемый}:localName xmlns:{генерируемый}="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, то он рассматривается как пространство имён по умолчанию и префикс не генерируется или записывается, объявление xmlns генерируется и записывается, если namespaceURI не привязано
  • [5] если prefix == "" || null, то это рассматривается как некорректная попытка определить пространство имён по умолчанию и генерируется XMLStreamException

С:
1.6
Версия:
1.0
См. также:
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

Записывает стартовый тег в выходной поток

Параметры:
localName - локальное имя тега, не может быть null
prefix - префикс тега, не может быть 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

Записывает пространство имён в выходной поток. Если аргумент префикса для этого метода пустая строка, "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. Обратите внимание, что параметр кодировки не задаёт фактическую кодировку базового потока вывода. Это необходимо установить при создании экземпляра 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

Возвращает:
префикс или 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

© 1993, 2020, 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.

Spec-Zone.ru

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