xml version="1.0" encoding="UTF-8"?>Der java:
< Kontakte>
< person id="1">
< Vorname> Encoder
< Vorname> Java
< mobil> 054124587
< E-Mail> codeurjava@gmail.com
< person id="2">
< Vorname> Encoder
< Vorname> C++
< mobil> 062148795
< E-Mail> codeurcplusplus@gmail.com
import javax.xml.parsers.SAXParser;Execution:
import javax.xml.parsers.SAXParserFactory;
import org.xml.sax.Attributes;
import org.xml.sax.SAXException;
import org.xml.sax.helpers.DefaultHandler;
public class ReadFileXML{
public static void main(String argv[]) {
try {
//Get sax parser
SAXParserFactory spfactory = SAXParserFactory.newInstance();
//Abrufen einer Instanz des ParserSAXParser saxParser = spfactory.newSAXParser();
/*alle drei Methoden sind im DefaltHandler deklariert /> corp
DefaultHandler handler = new DefaultHandler() {
boolean bnom = false;
boolescher bpreerster Name = false;
boolescher Wert bmobile = false;
boolescher bemail = false;
/*Diese Methode wird aufgerufen, wenn Parser auf
ein öffnendes Tag '<' stößt */
public void startElement(String uri, String localName,
String qName,Attributes attributes) wirft SAXException{
if (qName.equalsIgnoreCase("name")) {
bnom = true;
}
if (qName.equalsIgnoreCase("firstname")) {
bfirstname = true;
}
if (qName.equalsIgnoreCase("mobile")) {
bmobile = true;
}
if (qName.equalsIgnoreCase("email")) {
bemail = true;
}
}
/*Diese Methode wird aufgerufen, wenn der Parser auf
ein schließendes Tag stößt '>' */
public void endElement(String uri, String localName,
String qName) wirft SAXException {
if (qName.equalsIgnoreCase("name")) {
bnom = false;
}
if (qName.equalsIgnoreCase("firstname")) {
bfirstname = false;
}
if (qName.equalsIgnoreCase("mobile")) {
bmobile = false;
}
if (qName.equalsIgnoreCase("email")) {
bemail = false;
}
}
/*druckt Daten, die zwischen '<' und '>' gespeichert sind */
public void characters(char ch[], int start,
int length) wirft SAXException {
if (bnom) {
System.out.println("Name: " +
new String(ch, Anfang, Länge));
bnom = falsch;
}
if (bprename) {
System.out.println("Vorname: " +
new String(ch, start, length));
Vorname = false;
}
if (bmobile) {
System.out.println("Mobile : " +
new String(ch, start, length));
bmobile = falsch;
}
if (bemail) {
System.out.println("Email : " +
new String(ch, start, length));
bemail = falsch;
}
}
};
saxParser.parse("exemple.xml", handler);
} catch (Ausnahme e) {
e.printStackTrace();
}
}
}
Nachname: coder
Vorname: java
Mobil: 054124587
E-Mail: codeurjava@gmail.com
Nachname: coder
Vorname: c++
Mobil: 062148795
E-Mail: codeurcplusplus@gmail.com
Please disable your ad blocker and refresh the window to use this website.