P
phips.net
Gast
hallo alle,
ich soll ein xml parsen und knabber an einer mglk., auf bestimmte daten zuzugreifen.
hier mein ansatz einer methode, darunter ein der auszug aus dem entsprechenden xml file;
was passieren soll, steht im kommentar. 1000dank schonmal vorab.
gruß,
.p
//Liefert die BildID als int
public int getPic(String varID) {
Hashtable picIDs = new Hashtable();
Element header = root.getChild("header");
List drafts = header.getChildren("draft");
Iterator drafts_it = drafts.iterator();
while(drafts_it.hasNext()){
Element current = (Element)drafts_it.next();
List draft_variants = current.getChildren("variant");
Iterator draft_variants_it = draft_variants.iterator();
while(draft_variants_it.hasNext()){
Element current2 = (Element)draft_variants_it.next();
picIDs.put(current2.getAttribute("idVar"), current2.getAttribute("BildID"));
}
}
return picIDs.get(varID);
}
problem1: der rueckgabewert ist offensichtlich kein int...
problem2: ich weiss nicht, obs so ueberhaupt geht...
das xml sieht so aus:
<edition>
<header>
<id>1</id>
<title>Klage</title>
<autor>anonymus</autor>
<draft draftName="Fassung *B">
<variant idVar="München 34" bildID="234"/>
<variant idVar="St. Gallen" bildID="352"/>
<variant idVar="Wien" bildID="890"/>
</draft>
<draft draftName="Fassung *C">
<variant idVar="Donaueschingen 63" bildID="123"/>
<variant idVar="Donaueschingen 64" bildID="759"/>
<variant idVar="Sterzing" bildID="049"/>
<variant idVar="Genf" bildID="6548"/>
</draft>
</header>
</edition>
...wobei es einen oder mehrere draft bloecke geben kann....
ich soll ein xml parsen und knabber an einer mglk., auf bestimmte daten zuzugreifen.
hier mein ansatz einer methode, darunter ein der auszug aus dem entsprechenden xml file;
was passieren soll, steht im kommentar. 1000dank schonmal vorab.
gruß,
.p
//Liefert die BildID als int
public int getPic(String varID) {
Hashtable picIDs = new Hashtable();
Element header = root.getChild("header");
List drafts = header.getChildren("draft");
Iterator drafts_it = drafts.iterator();
while(drafts_it.hasNext()){
Element current = (Element)drafts_it.next();
List draft_variants = current.getChildren("variant");
Iterator draft_variants_it = draft_variants.iterator();
while(draft_variants_it.hasNext()){
Element current2 = (Element)draft_variants_it.next();
picIDs.put(current2.getAttribute("idVar"), current2.getAttribute("BildID"));
}
}
return picIDs.get(varID);
}
problem1: der rueckgabewert ist offensichtlich kein int...
problem2: ich weiss nicht, obs so ueberhaupt geht...
das xml sieht so aus:
<edition>
<header>
<id>1</id>
<title>Klage</title>
<autor>anonymus</autor>
<draft draftName="Fassung *B">
<variant idVar="München 34" bildID="234"/>
<variant idVar="St. Gallen" bildID="352"/>
<variant idVar="Wien" bildID="890"/>
</draft>
<draft draftName="Fassung *C">
<variant idVar="Donaueschingen 63" bildID="123"/>
<variant idVar="Donaueschingen 64" bildID="759"/>
<variant idVar="Sterzing" bildID="049"/>
<variant idVar="Genf" bildID="6548"/>
</draft>
</header>
</edition>
...wobei es einen oder mehrere draft bloecke geben kann....