Java by API/javax.xml.stream.events/XMLEvent

Материал из Java эксперт
Перейти к: навигация, поиск

XMLEvent: asStartElement()

   <source lang="java">
 

import java.io.FileReader; import javax.xml.stream.XMLEventReader; import javax.xml.stream.XMLInputFactory; import javax.xml.stream.events.XMLEvent; public class Main {

 public static void main(String args[]) throws Exception {
   XMLInputFactory xmlif = XMLInputFactory.newInstance();
   XMLEventReader xmler = xmlif.createXMLEventReader(new FileReader("yourFile.xml"));
   XMLEvent event;
   while (xmler.hasNext()) {
     event = xmler.nextEvent();
     if (event.isStartElement()) {
       System.out.println(event.asStartElement().getName());
     } else if (event.isCharacters()) {
       System.out.println(event.asCharacters().getData());
     }
   }
 }

}


 </source>
   
  
 
  



XMLEvent.ATTRIBUTE

   <source lang="java">
 

import java.io.FileInputStream; import javax.xml.stream.XMLEventReader; import javax.xml.stream.XMLInputFactory; import javax.xml.stream.events.XMLEvent; public class Main {

 public static void main(String[] args) throws Exception {
   String filename = "yourXML.xml";
   XMLInputFactory factory = XMLInputFactory.newInstance();
   System.out.println("FACTORY: " + factory);
   XMLEventReader r = factory.createXMLEventReader(filename, new FileInputStream(filename));
   while (r.hasNext()) {
     XMLEvent e = r.nextEvent();
     System.out.println(e.toString());
   }
 }
 public static final String getEventTypeString(int eventType) {
   switch (eventType) {
   case XMLEvent.START_ELEMENT:
     return "START_ELEMENT";
   case XMLEvent.END_ELEMENT:
     return "END_ELEMENT";
   case XMLEvent.PROCESSING_INSTRUCTION:
     return "PROCESSING_INSTRUCTION";
   case XMLEvent.CHARACTERS:
     return "CHARACTERS";
   case XMLEvent.ruMENT:
     return "COMMENT";
   case XMLEvent.START_DOCUMENT:
     return "START_DOCUMENT";
   case XMLEvent.END_DOCUMENT:
     return "END_DOCUMENT";
   case XMLEvent.ENTITY_REFERENCE:
     return "ENTITY_REFERENCE";
   case XMLEvent.ATTRIBUTE:
     return "ATTRIBUTE";
   case XMLEvent.DTD:
     return "DTD";
   case XMLEvent.CDATA:
     return "CDATA";
   case XMLEvent.SPACE:
     return "SPACE";
   }
   return "UNKNOWN_EVENT_TYPE " + "," + eventType;
 }

}


 </source>
   
  
 
  



XMLEvent.COMMENT

   <source lang="java">
 

import java.io.FileInputStream; import javax.xml.stream.XMLEventReader; import javax.xml.stream.XMLInputFactory; import javax.xml.stream.events.XMLEvent; public class Main {

 public static void main(String[] args) throws Exception {
   String filename = "yourXML.xml";
   XMLInputFactory factory = XMLInputFactory.newInstance();
   System.out.println("FACTORY: " + factory);
   XMLEventReader r = factory.createXMLEventReader(filename, new FileInputStream(filename));
   while (r.hasNext()) {
     XMLEvent e = r.nextEvent();
     System.out.println(e.toString());
   }
 }
 public static final String getEventTypeString(int eventType) {
   switch (eventType) {
   case XMLEvent.START_ELEMENT:
     return "START_ELEMENT";
   case XMLEvent.END_ELEMENT:
     return "END_ELEMENT";
   case XMLEvent.PROCESSING_INSTRUCTION:
     return "PROCESSING_INSTRUCTION";
   case XMLEvent.CHARACTERS:
     return "CHARACTERS";
   case XMLEvent.ruMENT:
     return "COMMENT";
   case XMLEvent.START_DOCUMENT:
     return "START_DOCUMENT";
   case XMLEvent.END_DOCUMENT:
     return "END_DOCUMENT";
   case XMLEvent.ENTITY_REFERENCE:
     return "ENTITY_REFERENCE";
   case XMLEvent.ATTRIBUTE:
     return "ATTRIBUTE";
   case XMLEvent.DTD:
     return "DTD";
   case XMLEvent.CDATA:
     return "CDATA";
   case XMLEvent.SPACE:
     return "SPACE";
   }
   return "UNKNOWN_EVENT_TYPE " + "," + eventType;
 }

}


 </source>
   
  
 
  



XMLEvent.END_ELEMENT

   <source lang="java">
 

import java.io.FileInputStream; import javax.xml.stream.XMLEventReader; import javax.xml.stream.XMLInputFactory; import javax.xml.stream.events.XMLEvent; public class Main {

 public static void main(String[] args) throws Exception {
   String filename = "yourXML.xml";
   XMLInputFactory factory = XMLInputFactory.newInstance();
   System.out.println("FACTORY: " + factory);
   XMLEventReader r = factory.createXMLEventReader(filename, new FileInputStream(filename));
   while (r.hasNext()) {
     XMLEvent e = r.nextEvent();
     System.out.println(e.toString());
   }
 }
 public static final String getEventTypeString(int eventType) {
   switch (eventType) {
   case XMLEvent.START_ELEMENT:
     return "START_ELEMENT";
   case XMLEvent.END_ELEMENT:
     return "END_ELEMENT";
   case XMLEvent.PROCESSING_INSTRUCTION:
     return "PROCESSING_INSTRUCTION";
   case XMLEvent.CHARACTERS:
     return "CHARACTERS";
   case XMLEvent.ruMENT:
     return "COMMENT";
   case XMLEvent.START_DOCUMENT:
     return "START_DOCUMENT";
   case XMLEvent.END_DOCUMENT:
     return "END_DOCUMENT";
   case XMLEvent.ENTITY_REFERENCE:
     return "ENTITY_REFERENCE";
   case XMLEvent.ATTRIBUTE:
     return "ATTRIBUTE";
   case XMLEvent.DTD:
     return "DTD";
   case XMLEvent.CDATA:
     return "CDATA";
   case XMLEvent.SPACE:
     return "SPACE";
   }
   return "UNKNOWN_EVENT_TYPE " + "," + eventType;
 }

}


 </source>
   
  
 
  



XMLEvent.ENTITY_REFERENCE

   <source lang="java">
 

import java.io.FileInputStream; import javax.xml.stream.XMLEventReader; import javax.xml.stream.XMLInputFactory; import javax.xml.stream.events.XMLEvent; public class Main {

 public static void main(String[] args) throws Exception {
   String filename = "yourXML.xml";
   XMLInputFactory factory = XMLInputFactory.newInstance();
   System.out.println("FACTORY: " + factory);
   XMLEventReader r = factory.createXMLEventReader(filename, new FileInputStream(filename));
   while (r.hasNext()) {
     XMLEvent e = r.nextEvent();
     System.out.println(e.toString());
   }
 }
 public static final String getEventTypeString(int eventType) {
   switch (eventType) {
   case XMLEvent.START_ELEMENT:
     return "START_ELEMENT";
   case XMLEvent.END_ELEMENT:
     return "END_ELEMENT";
   case XMLEvent.PROCESSING_INSTRUCTION:
     return "PROCESSING_INSTRUCTION";
   case XMLEvent.CHARACTERS:
     return "CHARACTERS";
   case XMLEvent.ruMENT:
     return "COMMENT";
   case XMLEvent.START_DOCUMENT:
     return "START_DOCUMENT";
   case XMLEvent.END_DOCUMENT:
     return "END_DOCUMENT";
   case XMLEvent.ENTITY_REFERENCE:
     return "ENTITY_REFERENCE";
   case XMLEvent.ATTRIBUTE:
     return "ATTRIBUTE";
   case XMLEvent.DTD:
     return "DTD";
   case XMLEvent.CDATA:
     return "CDATA";
   case XMLEvent.SPACE:
     return "SPACE";
   }
   return "UNKNOWN_EVENT_TYPE " + "," + eventType;
 }

}


 </source>
   
  
 
  



XMLEvent: isCharacters()

   <source lang="java">
 

import java.io.FileReader; import javax.xml.stream.XMLEventReader; import javax.xml.stream.XMLInputFactory; import javax.xml.stream.events.XMLEvent; public class Main {

 public static void main(String args[]) throws Exception {
   XMLInputFactory xmlif = XMLInputFactory.newInstance();
   XMLEventReader xmler = xmlif.createXMLEventReader(new FileReader("yourFile.xml"));
   XMLEvent event;
   while (xmler.hasNext()) {
     event = xmler.nextEvent();
     if (event.isStartElement()) {
       System.out.println(event.asStartElement().getName());
     } else if (event.isCharacters()) {
       System.out.println(event.asCharacters().getData());
     }
   }
 }

}


 </source>
   
  
 
  



XMLEvent: isEndElement()

   <source lang="java">
 

import java.io.FileReader; import java.io.Reader; import java.util.Iterator; import javax.xml.namespace.QName; import javax.xml.stream.XMLEventReader; import javax.xml.stream.XMLInputFactory; import javax.xml.stream.events.Attribute; import javax.xml.stream.events.Characters; import javax.xml.stream.events.EndElement; import javax.xml.stream.events.StartElement; import javax.xml.stream.events.XMLEvent; public class Main {

 public static void main(String[] args) throws Exception {
   XMLInputFactory factory = XMLInputFactory.newInstance();
   Reader fileReader = new FileReader("Source.xml");
   XMLEventReader reader = factory.createXMLEventReader(fileReader);
   while (reader.hasNext()) {
     XMLEvent event = reader.nextEvent();
     if (event.isStartElement()) {
       StartElement element = (StartElement) event;
       System.out.println("Start Element: " + element.getName());
       Iterator iterator = element.getAttributes();
       while (iterator.hasNext()) {
         Attribute attribute = (Attribute) iterator.next();
         QName name = attribute.getName();
         String value = attribute.getValue();
         System.out.println("Attribute name/value: " + name + "/" + value);
       }
     }
     if (event.isEndElement()) {
       EndElement element = (EndElement) event;
       System.out.println("End element:" + element.getName());
     }
     if (event.isCharacters()) {
       Characters characters = (Characters) event;
       System.out.println("Text: " + characters.getData());
     }
   }
 }

}


 </source>
   
  
 
  



XMLEvent.PROCESSING_INSTRUCTION

   <source lang="java">
 

import java.io.FileInputStream; import javax.xml.stream.XMLEventReader; import javax.xml.stream.XMLInputFactory; import javax.xml.stream.events.XMLEvent; public class Main {

 public static void main(String[] args) throws Exception {
   String filename = "yourXML.xml";
   XMLInputFactory factory = XMLInputFactory.newInstance();
   System.out.println("FACTORY: " + factory);
   XMLEventReader r = factory.createXMLEventReader(filename, new FileInputStream(filename));
   while (r.hasNext()) {
     XMLEvent e = r.nextEvent();
     System.out.println(e.toString());
   }
 }
 public static final String getEventTypeString(int eventType) {
   switch (eventType) {
   case XMLEvent.START_ELEMENT:
     return "START_ELEMENT";
   case XMLEvent.END_ELEMENT:
     return "END_ELEMENT";
   case XMLEvent.PROCESSING_INSTRUCTION:
     return "PROCESSING_INSTRUCTION";
   case XMLEvent.CHARACTERS:
     return "CHARACTERS";
   case XMLEvent.ruMENT:
     return "COMMENT";
   case XMLEvent.START_DOCUMENT:
     return "START_DOCUMENT";
   case XMLEvent.END_DOCUMENT:
     return "END_DOCUMENT";
   case XMLEvent.ENTITY_REFERENCE:
     return "ENTITY_REFERENCE";
   case XMLEvent.ATTRIBUTE:
     return "ATTRIBUTE";
   case XMLEvent.DTD:
     return "DTD";
   case XMLEvent.CDATA:
     return "CDATA";
   case XMLEvent.SPACE:
     return "SPACE";
   }
   return "UNKNOWN_EVENT_TYPE " + "," + eventType;
 }

}


 </source>
   
  
 
  



XMLEvent.SPACE

   <source lang="java">
 

import java.io.FileInputStream; import javax.xml.stream.XMLEventReader; import javax.xml.stream.XMLInputFactory; import javax.xml.stream.events.XMLEvent; public class Main {

 public static void main(String[] args) throws Exception {
   String filename = "yourXML.xml";
   XMLInputFactory factory = XMLInputFactory.newInstance();
   System.out.println("FACTORY: " + factory);
   XMLEventReader r = factory.createXMLEventReader(filename, new FileInputStream(filename));
   while (r.hasNext()) {
     XMLEvent e = r.nextEvent();
     System.out.println(e.toString());
   }
 }
 public static final String getEventTypeString(int eventType) {
   switch (eventType) {
   case XMLEvent.START_ELEMENT:
     return "START_ELEMENT";
   case XMLEvent.END_ELEMENT:
     return "END_ELEMENT";
   case XMLEvent.PROCESSING_INSTRUCTION:
     return "PROCESSING_INSTRUCTION";
   case XMLEvent.CHARACTERS:
     return "CHARACTERS";
   case XMLEvent.ruMENT:
     return "COMMENT";
   case XMLEvent.START_DOCUMENT:
     return "START_DOCUMENT";
   case XMLEvent.END_DOCUMENT:
     return "END_DOCUMENT";
   case XMLEvent.ENTITY_REFERENCE:
     return "ENTITY_REFERENCE";
   case XMLEvent.ATTRIBUTE:
     return "ATTRIBUTE";
   case XMLEvent.DTD:
     return "DTD";
   case XMLEvent.CDATA:
     return "CDATA";
   case XMLEvent.SPACE:
     return "SPACE";
   }
   return "UNKNOWN_EVENT_TYPE " + "," + eventType;
 }

}


 </source>