# ID's aus XML Datei rauslesen und in Java ausgeben



## DyXe (25. Sep 2009)

Hi leute,

bin ziemlich neu auf dem Gebiet Java und soll nun von meinem Betreuer aus ein Programm mit Oberfläche schreiben, welches über einen "Öffnen" Button eine XML Datei einliest und in der linken Textarea ausgibt und wenn man auf den "IDs rauslesen" Button klickt, soll er alle IDs der XML Datei in der linken Textarea nach rechts schreiben... Aber nur die ID Namen wie z.b. von der ID: <section id="blubba"> dann nur blubba schreiben soll. Den Öffnen Button habe ich schonmal hinbekommen, aber das mit den IDs rauslesen bekomme ich nicht hin und versuche es schon seid 2 Tagen ;(
Wäre nett, wenn ihr mir helfen könntet. Hier mal ein Screenshot des Programms und ein Teil des Quellcodes:  

BILD


```
private void LadenMouseClicked(java.awt.event.MouseEvent evt) {                                   

   String filename = File.separator + "tmp";
        JFileChooser fc = new JFileChooser(new File(filename));
        fc.setFileFilter(new FileFilter() {
                public boolean accept(File f) {
                    return f.getName().toLowerCase().endsWith(".xml") || f.isDirectory();
                }
                public String getDescription() {
                    return "XML-Dateien(*.xml)";
                }
            });
        fc.showOpenDialog(null);
        File selFile = fc.getSelectedFile();

   Vector vec = new Vector();
   String ladexml;

   try {
      BufferedReader einlesen = new BufferedReader(
                                new InputStreamReader(
                                new FileInputStream( selFile ) ) );
        textarea_original.setText("");
      while( null != (ladexml = einlesen.readLine()) ) {
        vec.add( ladexml );
        textarea_original.append(ladexml);
        textarea_original.append("\n");
      }
      System.out.println("Datei wurde geladen!");
      einlesen.close();
    } catch( FileNotFoundException ex ) {
    } catch( Exception ex ) {
      System.out.println( ex );
    }

    }                                                                   

    private void IDMouseClicked(java.awt.event.MouseEvent evt) {

?????????????????????????????
    }
```

da wo die ??? sind soll dann der code hin =/

Danke schonmal im vorraus.

lg Daniel =)


----------



## Gelöschtes Mitglied 5909 (26. Sep 2009)

versuche es mal mit einem XML Parser wie DOM / SAX / StAX

Galileo Computing :: Java ist auch eine Insel (8. Auflage) – 15 Die eXtensible Markup Language (XML)


----------



## DyXe (2. Okt 2009)

Hi leutz, habe nun den DOM Parser installiert, aber irgendwie komm ich damit nich zurecht, bin halt doch eben noch ein anfänger 
Könnte mir einer von euch evtl helfen und den quellcode schreiben? das sollte doch nicht allzulang sein oder? Wäre echt nett =)

lg Daniel


----------



## Terrestrex (2. Okt 2009)

Hallo DyXe,
ich bin auch ein Anfänger, so wage ich mir jetzt nicht Dir tipps zum "guten" Programmieren zu geben.

Ich schreibe auch grad ein Programm, das XMLs einbindet. Dazu benutze ich die JDom.jar.

Eine gute Einleitung dazu fand ich auf der Seite

JDOM: Lesen & Schreiben von XML - Java - Tutorials @ tutorials.de: Forum, Tutorial, Anleitung, Schulung & Hilfe

Für meine Zwecke war das Ausreichen und, wenn ich dich richtig verstanden habe, sollte es für deine auch sein.

Grüße

Terrex


----------



## vogella (4. Okt 2009)

Hallo DyXe,

das Tutorial hier beschreibt (auch) Stax, welches seit Java 1.6 standardmässig dabei ist. Geht doch mal das Beispiel dort durch, dann solltest Du auch Dein XML lesen können. 

Java and XML - Tutorial


----------



## DyXe (5. Okt 2009)

soo, mein Betreuer hat gerade gesagt, ich solls lieber über einen Regulären Ausdruck versuchen, könnt ihr mir dabei helfen? x)
Wäre echt nett =)

lg Daniel


----------



## vogella (5. Okt 2009)

Schau mal hier: Java and Regular Expressions


----------



## DyXe (5. Okt 2009)

Okay vielen Dank =)
habs hinbekommen ^^


----------

