javax.xml.stream

## Interface XMLEventReader

- All Superinterfaces:
    Iterator
  All Known Implementing Classes:
    EventReaderDelegate

      public interface XMLEventReader
      extends Iterator

  This is the top level interface for parsing XML Events. It provides the ability to peek at the next event and returns configuration information through the property interface.
  Since:
    1.6
  See Also:
    `XMLInputFactory`, `XMLEventWriter`

- - ### Method Summary

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `void` | `close()` Frees any resources associated with this Reader.
    `String` | `getElementText()` Reads the content of a text-only element.
    `Object` | `getProperty(String name)` Get the value of a feature/property from the underlying implementation
    `boolean` | `hasNext()` Check if there are more events.
    `XMLEvent` | `nextEvent()` Get the next XMLEvent
    `XMLEvent` | `nextTag()` Skips any insignificant space events until a START_ELEMENT or END_ELEMENT is reached.
    `XMLEvent` | `peek()` Check the next XMLEvent without reading it from the stream.

    - ### Methods inherited from interface java.util.Iterator

      `next, remove`

- - ### Method Detail

    - #### nextEvent

          XMLEvent nextEvent()
                             throws XMLStreamException

      Get the next XMLEvent
      Throws:
        `XMLStreamException` - if there is an error with the underlying XML.
        `NoSuchElementException` - iteration has no more elements.
      See Also:
        `XMLEvent`

    - #### hasNext

          boolean hasNext()

      Check if there are more events. Returns true if there are more events and false otherwise.
      Specified by:
        `hasNext` in interface `Iterator`
      Returns:
        true if the event reader has more events, false otherwise

    - #### peek

          XMLEvent peek()
                        throws XMLStreamException

      Check the next XMLEvent without reading it from the stream. Returns null if the stream is at EOF or has no more XMLEvents. A call to peek() will be equal to the next return of next().
      Throws:
        `XMLStreamException`
      See Also:
        `XMLEvent`

    - #### getElementText

          String getElementText()
                                throws XMLStreamException

      Reads the content of a text-only element. Precondition: the current event is START_ELEMENT. Postcondition: The current event is the corresponding END_ELEMENT.
      Throws:
        `XMLStreamException` - if the current event is not a START_ELEMENT or if a non text element is encountered

    - #### nextTag

          XMLEvent nextTag()
                           throws XMLStreamException

      Skips any insignificant space events until a START_ELEMENT or END_ELEMENT is reached. If anything other than space characters are encountered, an exception is thrown. This method should be used when processing element-only content because the parser is not able to recognize ignorable whitespace if the DTD is missing or not interpreted.
      Throws:
        `XMLStreamException` - if anything other than space characters are encountered

    - #### getProperty

          Object getProperty(String name)
                             throws IllegalArgumentException

      Get the value of a feature/property from the underlying implementation
      Parameters:
        `name` - The name of the property
      Returns:
        The value of the property
      Throws:
        `IllegalArgumentException` - if the property is not supported

    - #### close

          void close()
                     throws XMLStreamException

      Frees any resources associated with this Reader. This method does not close the underlying input source.
      Throws:
        `XMLStreamException` - if there are errors freeing associated resources

Submit a bug or feature
For further API reference and developer documentation, see Java SE Documentation. That documentation contains more detailed, developer-targeted descriptions, with conceptual overviews, definitions of terms, workarounds, and working code examples.

Copyright © 1993, 2014, Oracle and/or its affiliates. All rights reserved.