XMLStreamReaderDemo.java Source code

Java tutorial

Introduction

Here is the source code for XMLStreamReaderDemo.java

Source

import java.io.FileReader;
import java.io.Reader;

import javax.xml.stream.XMLInputFactory;
import javax.xml.stream.XMLStreamConstants;
import javax.xml.stream.XMLStreamReader;

public class XMLStreamReaderDemo {
    public static void main(String[] args) throws Exception {
        XMLInputFactory factory = XMLInputFactory.newInstance();

        Reader fileReader = new FileReader("source.xml");
        XMLStreamReader reader = factory.createXMLStreamReader(fileReader);

        while (reader.hasNext()) {
            process(reader);
            reader.next();
        }
    }

    private static void process(XMLStreamReader reader) {
        int eventType = reader.getEventType();
        switch (eventType) {
        case XMLStreamConstants.START_ELEMENT:
            System.out.println("Start element: " + reader.getLocalName());

            int count = reader.getAttributeCount();
            for (int i = 0; i < count; i++) {
                String name = reader.getAttributeLocalName(i);
                String value = reader.getAttributeValue(i);
                System.out.println("\tAttribute name/value: " + name + "/" + value);
            }
            break;

        case XMLStreamConstants.END_ELEMENT:
            System.out.println("End element: " + reader.getLocalName());
            break;

        case XMLStreamConstants.CHARACTERS:
            System.out.println("Text: " + reader.getText());
            break;
        default:
            break;
        }
    }
}