Hallo liebe XML-Freunde,
ich habe eine kleine SAX-Apllication zum parsen geschrieben und nun möchte ich die Werte(daten) von bestimmten XML-Elementen zu Variablen eines vom mir definierten Array übergeben. Ziel: diese Daten in Array werden später in einer Datenbank danks jdbc-Applikation gespiechert.
Hier ist ein teil meiner quellcode: (damit habe ich bestimmten Werte mit System.out.println() "innerhalb character()-methode" ausgegeben)
private String language = "";
private String currency = "";
private String catalog_id="";
public void startElement(String namespaceURI, String localName, String qName, Attributes atts) throws SAXException {
if( localName.equals("LANGUAGE")||localName.equals("CATALOG_ID")||localName.equals("CURRENCY") ){
language = "LANGUAGE";
catalog_id="CATALOG_ID";
currency = "CURRENCY";
}else{
language="";
currency="";
catalog_id="";
}
} //startElement()
public void endElement(String namespaceURI, String localName, String qName) throws SAXException { } //endElement()
public void characters(char ch[], int start, int length) {
if( language.equals("LANGUAGE")||catalog_id.equals("CATALOG_ID")||currency.equals("CURRENCY")){
System.out.println(new String(ch , start, length)); //Hier die Ausgabe-methode }else{ }
} // characters(char[],int,int);
Hier die XML-Datei :
- <HEADER>
<GENERATOR_INFO>e-proCat 2.1, e-pro solutions GmbH, Stuttgart, email: e-procat@e-pro.de</GENERATOR_INFO>
- <CATALOG>
<LANGUAGE>deu</LANGUAGE>
<CATALOG_ID>Katalog 01</CATALOG_ID>
<CATALOG_VERSION>001.000</CATALOG_VERSION>
<CATALOG_NAME>ETIM-BMEcat-Katalog</CATALOG_NAME>
+ <DATETIME type="generation_date">
<DATE>2002-05-22</DATE>
</DATETIME>
<TERRITORY>DE</TERRITORY>
<CURRENCY>EUR</CURRENCY>
<MIME_ROOT>ETIM-Daten\\Multimedia</MIME_ROOT>
</CATALOG>
</HEADER>
PS. ich möchte die werte von den elementen <language>,<catalog_id> und <currency> in ein arry zwischen speichern und diese später mit einer anderen applikation(jdbc) in eine Datenbank speichern.
Danke sehr für ihre Hilfe.
Jonathan
ich habe eine kleine SAX-Apllication zum parsen geschrieben und nun möchte ich die Werte(daten) von bestimmten XML-Elementen zu Variablen eines vom mir definierten Array übergeben. Ziel: diese Daten in Array werden später in einer Datenbank danks jdbc-Applikation gespiechert.
Hier ist ein teil meiner quellcode: (damit habe ich bestimmten Werte mit System.out.println() "innerhalb character()-methode" ausgegeben)
private String language = "";
private String currency = "";
private String catalog_id="";
public void startElement(String namespaceURI, String localName, String qName, Attributes atts) throws SAXException {
if( localName.equals("LANGUAGE")||localName.equals("CATALOG_ID")||localName.equals("CURRENCY") ){
language = "LANGUAGE";
catalog_id="CATALOG_ID";
currency = "CURRENCY";
}else{
language="";
currency="";
catalog_id="";
}
} //startElement()
public void endElement(String namespaceURI, String localName, String qName) throws SAXException { } //endElement()
public void characters(char ch[], int start, int length) {
if( language.equals("LANGUAGE")||catalog_id.equals("CATALOG_ID")||currency.equals("CURRENCY")){
System.out.println(new String(ch , start, length)); //Hier die Ausgabe-methode }else{ }
} // characters(char[],int,int);
Hier die XML-Datei :
- <HEADER>
<GENERATOR_INFO>e-proCat 2.1, e-pro solutions GmbH, Stuttgart, email: e-procat@e-pro.de</GENERATOR_INFO>
- <CATALOG>
<LANGUAGE>deu</LANGUAGE>
<CATALOG_ID>Katalog 01</CATALOG_ID>
<CATALOG_VERSION>001.000</CATALOG_VERSION>
<CATALOG_NAME>ETIM-BMEcat-Katalog</CATALOG_NAME>
+ <DATETIME type="generation_date">
<DATE>2002-05-22</DATE>
</DATETIME>
<TERRITORY>DE</TERRITORY>
<CURRENCY>EUR</CURRENCY>
<MIME_ROOT>ETIM-Daten\\Multimedia</MIME_ROOT>
</CATALOG>
</HEADER>
PS. ich möchte die werte von den elementen <language>,<catalog_id> und <currency> in ein arry zwischen speichern und diese später mit einer anderen applikation(jdbc) in eine Datenbank speichern.
Danke sehr für ihre Hilfe.
Jonathan