# SAXReader , auslesen bis zum bestimmten knoten!



## licht400 (17. Aug 2007)

Hallo,
ich lese eine xml datei mittels saxreader komplett aus, möchte aber bloß bis zu einem bestimmten knoten..

beispiel..


```
start
      knoten1
                 
      knoten2
                 zweig1
                 zweig2
                           ast1
                           ast2
      knoten3
                zweig3
                          ast3
                zweig4
                          ast4
                          ast5
                zweig5
```


etc.

und ich möchte nur bis zu den zweigs auslesen, da ich die äste nicht benötige..zumindest nich für diesen zweck!

meinn code zum kompletten auslesen sieht so aus, aber wie sage ich dem, nur bis zum zweig!



```
SAXReader reader = new SAXReader();
        Document doc = reader.read("gesamt.xml");
        Element used = doc.getRootElement();
        DefaultMutableTreeNode intro = new DefaultMutableTreeNode(used.getName());
        System.out.println("used.getName(): " +used.getName());
        appendChilds(used, intro);
        tree = new JTree(intro);
        if(d == null){
            System.out.println("d ist null und somit kacke :D");
        }
         else{
            d.menuPanel.add(tree,BorderLayout.CENTER);
            tree.addTreeSelectionListener(a);  
            }
```


```
public static void appendChilds(org.dom4j.Element used, javax.swing.tree.DefaultMutableTreeNode intro) {
        List childs = used.elements();
        System.out.println("used.elements: "+ used.elements());
       // System.out.println("childs.size: " +childs.size());
        for (int i=0; i<childs.size(); i++) {
            
            org.dom4j.Element e = (org.dom4j.Element) childs.get(i);
            DefaultMutableTreeNode install = new DefaultMutableTreeNode(e.getName());
            intro.add(install);
            appendChilds((org.dom4j.Element) e, (javax.swing.tree.DefaultMutableTreeNode) install);
        }
    }
```


----------



## licht400 (20. Aug 2007)

so, wenn ich das nach jedem klick ausgebe, zeigt er mir an in welcher eben ich bin.
So, ich möchte aber nur max. 3 Ebenen angezeigt haben und nicht noch die "Ast - Ebene" wie oben schon beschrieben.


```
System.out.println("Ebene: " + tree.getSelectionPath().getPathCount());
```

also muss ich doch beim einnlesen eine grenze geben können oder, so das er die Ast-ebene nicht mit einliest?!!


----------



## licht400 (21. Aug 2007)

keiner eine Idee, wie ich die suche begrenzen kann?


----------



## licht400 (24. Aug 2007)

hab es hinbekommen,dass mir das Ästchen nicht angezeigt wird..

habe einfach ein bedingung reingehauen..child.siz() >= 2 dann mach, sonst halt nich!


ANDERE Frage:

Wenn ich die XML durchsucht habe, kann ich nach einer ID suchen?
Habe in der xml bestimmte ID's vergeben...


```
<link id="4" url="ergebnissdarstellung.htm">
```


Kann ich mir die id bzw die url als string ausgeben lassen?


----------

