tutorials.de Buch-Aktion 05/2012
ERLEDIGT
NEIN
ANTWORTEN
5
ZUGRIFFE
698
EMPFEHLEN
  • An Twitter übertragen
  • An Facebook übertragen
AUF DIESES THEMA
ANTWORTEN
  1. #1
    Shizzl_chrizzl Shizzl_chrizzl ist offline Mitglied Gold
    Registriert seit
    Oct 2004
    Beiträge
    144
    Hi,
    ich hab n kleinens Problem mit dem Parsen einer xml-File.
    Ich möchte die XML-File im Anhang parsen. Das Einlesen funktioniert einwandfrei. Auseinanderpflücken kann ich sie auch, nur noch nicht so wie ich es gerne möchte bzw. bin ich neu auf dem Gebiet und kenne wahrscheinlich einige Kniffe noch nicht.

    Ich will die xml-File einfach in ihre Ebenen zerlegen. Sprich die Group in einen Vektor, die Items der Groups in einen anderen Vektor und dann mit den vektoren JTabbedPanes erzeugen deren Namen im Group Vektor und deren Elemente im Items-Vektor.
    Hier beginnt es schon mal ich weis nicht ob das der beste Weg ist, aber ich denke mal das das eine vernüniftige Herangehensweise sein dürfte.

    Ich stell mal meinen bisherigen Versuch rein und hoff das ihr mich in die richtige Richtungen schubsen könnt. Hier funktioniert das Parsen zwar schon aber ich kann es nicth in die einzelnen Ebenen zerlegen sondern nur stumpf element nach element parsen.

    Code :
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    
       try {
            Vector vRoots = new Vector();
        
            Element nl = d.getDocumentElement();
            NodeList list = nl.getChildNodes();
            
            for (int i= 0; i<list.getLength();i++){
            
              Node child = list.item(i);
                
               if(child instanceof Element)
               {  
                 Element childElement = (Element)child;
                 String childName = childElement.getTagName();
                
                 vRoots.add(childName);
              
                if (((Element)list.item(i)).getTagName().equals("EXTENSIONS")){
                  
                    NodeList extensionList = list.item(i).getChildNodes();
                        xmlTree(extensionList);
                    }
               }
            }
            
       
        } catch (Throwable t) {
            t.printStackTrace();
          }
       
        }
         
        private void xmlTree(NodeList nl){
            NodeList extensionList = nl;
                for (int c = 0; c<extensionList.getLength(); c++){
                    
                Vector vXMLItems = new Vector();    
                    Node extensionChild = extensionList.item(c);
                    
                    if(extensionChild instanceof Element){
                        
                    Element extensionChildElement = (Element)extensionChild;
                // System.out.println(extensionChildElement.getTagName());
                    String extensionChildName = extensionChildElement.getTagName();
                 if(extensionChildElement.getTagName().trim().equals("NAME")){
                            
                    Text textNode = (Text)extensionChildElement.getFirstChild();
                    String text = textNode.getData().trim();
                        
                        vXMLItems.add(text);
                        System.out.println(c + text);
                        }
                    if(c == 3)jOutlookBarWikiMain.setJOutlookBar(vXMLItems);
                    NodeList itemList = extensionList.item(c).getChildNodes();          
                    if(itemList != null)xmlTree(itemList);
                    }
                }
       
        }

    Ich will nur die Group "Extensions" parsen , nur so als Info für das Vorgehen im Quelltext.
     

  2. #2
    Registriert seit
    Jun 2002
    Ort
    Saarbrücken (Saarland)
    Beiträge
    9.886
    Blog-Einträge
    29
    Hallo!

    Also ich würde das ganze mit XPath machen, jedoch wäre es sehr hilfreich noch das dazu passende XML File zu Gesicht zu bekommen

    Gruß Tom
     

  3. #3
    Shizzl_chrizzl Shizzl_chrizzl ist offline Mitglied Gold
    Registriert seit
    Oct 2004
    Beiträge
    144
    Hoppla ich vergessen . Leider muss ich es auf diese Weise mit JDOM machen.
    Angehängte Dateien Angehängte Dateien
     

  4. #4
    Shizzl_chrizzl Shizzl_chrizzl ist offline Mitglied Gold
    Registriert seit
    Oct 2004
    Beiträge
    144
    keiner ne idee
     

  5. #5
    Registriert seit
    Jun 2002
    Ort
    Saarbrücken (Saarland)
    Beiträge
    9.886
    Blog-Einträge
    29
    Hallo!

    Weshalb willst du die Elemente zuerst in einen Vector packen wenn du daraus später sowieso einen JTabbedPane aufbauen willst? Du könntest den JTabbedPane doch direkt während des parsens Aufbauen. Weirerhin solltest du dir mal die Beispiele im build/samples Verzeichnis der JDOM Distribution anschauen...
    Weshalb muss es eigentlich unbedingt JDOM sein?

    Gruß Tom
     

  6. #6
    Shizzl_chrizzl Shizzl_chrizzl ist offline Mitglied Gold
    Registriert seit
    Oct 2004
    Beiträge
    144
    schau genau sowas mein ich mit kniffe. Mir fehlt da noch die Erfahrung , deshalb hab ich ja nachgefragt. Das mit JDOM geht von der Arbeit aus, die ham das so vorgeschrieben.

    Aber gut dann versuch ich das mal so
     

Ähnliche Themen

  1. Problem mit parsen eines XML String im IE
    Von mrno im Forum Javascript & Ajax
    Antworten: 4
    Letzter Beitrag: 31.03.09, 11:48
  2. Domainendung parsen? Problem
    Von Angeltv im Forum ASP
    Antworten: 3
    Letzter Beitrag: 14.08.06, 17:03
  3. Problem beim XML-Parsen
    Von McQueen im Forum PHP
    Antworten: 0
    Letzter Beitrag: 06.03.05, 19:44
  4. Problem mit XML Parsen über Javascript
    Von janosch im Forum Javascript & Ajax
    Antworten: 7
    Letzter Beitrag: 29.06.04, 19:46
  5. Problem beim Parsen von XML mit SAX
    Von Static_Vengeance im Forum Java
    Antworten: 1
    Letzter Beitrag: 26.11.03, 15:11