# *.group() in File auslesen



## mdoemli (5. Apr 2005)

Guten Morgen zusammen,

ich hab mir eine kleine Application geschrieben, die mir bestimmte Links aus einem File liest und in ein File schreibt.
Das Problem ist  es wird zwar gelesen, aber nicht die Ergebnisse in das neue File rausgeschrieben. Komischerweise funktioniert es wenn ich mir die Ergebnise auf der Konsole ausgeben lasse. 
Wenn ich nur den regex ".*", um zu testen ob überhaupt etwas rausgeschrieben wird, funktioniert es aber.


```
public class HTMLLinks {
	public static void main(String[] args) throws IOException, IllegalStateException{
		
		PrintWriter writeIn;
		BufferedReader in = null;
		String information = "";
        String fileName = "c:/Documents and Settings/Administrator/Desktop/RegEx_Test/main.htm";
        String writeFile = "c:/Documents and Settings/Administrator/Desktop/RegEx_Test/out.txt";
        
        FileReader fis = new FileReader (fileName);
        in = new BufferedReader (fis);
        writeIn = new PrintWriter(new FileWriter(writeFile));
		
		
       
       String pattern = "<A +HREF=\"http([^\"]+)\" +TITLE([^>]+)>([^<]+)</A>";
        /*
         * So sollen dies Links ausehen.
         * [url="http://www.rss-nachrichten.de/rss-verzeichnis/index.php/Anzeigen/cat=33"]Anzeigen[/url]
         */
        
        
		Pattern p  = Pattern.compile(pattern);
		
		while((information = in.readLine()) != null){
			
			Matcher m = p.matcher(information);
			
			while(m.find()){
				
				writeIn.println(m.group());
				//System.out.println(m.group());
		
			}
		}
		
	}
}
```

Gruß

mdoemli


----------



## Sky (5. Apr 2005)

Nach deiner while-Schleife - also zwischen Zeile 34 und 35:


```
writeIn.flush();
writeIn.close();
```
sollte die Lösung sein.


----------



## mdoemli (5. Apr 2005)

Hallo Sky80,

vielen Dank für deine Hilfe. Läuft!
Bloß das "close" muss noch außerhalb der äußeren while-Schleife.
Das Problem hat mich ungefähr 3-4 Stunden gekostet, was Schlampigkeit außmachen kann. 

Nochmals Danke


----------



## mdoemli (5. Apr 2005)

Hallo ich nochmal,

hoffentlich passt die Frage in diesen Thread. Wie kann ich anhand der ausgelesenen Daten von "out.txt", dynamisch ein xml-File generieren? Kann mir da jemand Lesestoff empfehlen, oder sagen unter was ich da in google schauen soll?
Ich find nämlich überhaupt nichts darüber wie das mit Java funktioniert.

Gruß,

mdoemli


----------



## mdoemli (5. Apr 2005)

Tja,

gibt es vielleicht auch eine bessere Lösung, also die Daten garnicht in eine *.txt abspeichern, sondern gleich verarbeiten?
Ich hab wirklich keine große Ahnung. Hat vielleicht jemand ein kleines Code Beispiel für sowas? Anregungen?

Gruß,

Max


----------

