Hallo Leute,
bin dann auch mal hier... und ich scheitere schon wieder an einer Aufgabe.. Wir sollen ein Programm schreiben das x-beliebige Dateien auf ein String durchsucht und diese dann durch einen anderen Strind ersetzt.
Ich hab das auch soweit gut hinbekommen. Mein Programm kann jetzt folgendes.
Es fragt nach einer Datei... dann nach einer zweiten Datei naja ok nicht ganz Sinn der Aufgabe aber immerhin schon etwas. Somit funktioniert, wenn man zweimal den selben Dateipfad angibt, schonmal die Ersetzung. Es fragt einen String nachdem gesucht werden soll und nach einem String das den ursprünglichen String ersetzt. Funktioniert wunderbar!!!
Jetzt mein Problem:
ich schaffe es einfach nicht raus zu bekommen wie ich beliebig viele Dateien aussuchen kann. Ich denke mal das eine ArrayList das richtige wäre und hab mich wirklich mehr als durch gelesen aber ich kann es einfach nicht umsetzen..
Das einzigste was ich noch geschafft habe ist eine ArrayList zu erstellen die die Zeilen jeweils als Array beinhaltet. Aber ich glaube das war wohl Zeitverschwendung. Würde ja dann auf mehrere Arraylisten hinauslaufen bzw x-beliebig viele. Matrix?
ich bitte wirklich dringends um hilfe ich kann echt nciht mehr...
Hier mein Programm:
bin dann auch mal hier... und ich scheitere schon wieder an einer Aufgabe.. Wir sollen ein Programm schreiben das x-beliebige Dateien auf ein String durchsucht und diese dann durch einen anderen Strind ersetzt.
Ich hab das auch soweit gut hinbekommen. Mein Programm kann jetzt folgendes.
Es fragt nach einer Datei... dann nach einer zweiten Datei naja ok nicht ganz Sinn der Aufgabe aber immerhin schon etwas. Somit funktioniert, wenn man zweimal den selben Dateipfad angibt, schonmal die Ersetzung. Es fragt einen String nachdem gesucht werden soll und nach einem String das den ursprünglichen String ersetzt. Funktioniert wunderbar!!!
Jetzt mein Problem:
ich schaffe es einfach nicht raus zu bekommen wie ich beliebig viele Dateien aussuchen kann. Ich denke mal das eine ArrayList das richtige wäre und hab mich wirklich mehr als durch gelesen aber ich kann es einfach nicht umsetzen..
Das einzigste was ich noch geschafft habe ist eine ArrayList zu erstellen die die Zeilen jeweils als Array beinhaltet. Aber ich glaube das war wohl Zeitverschwendung. Würde ja dann auf mehrere Arraylisten hinauslaufen bzw x-beliebig viele. Matrix?
ich bitte wirklich dringends um hilfe ich kann echt nciht mehr...
Hier mein Programm:
Code:
import de.htw.saarland.stl.Stdin;
import java.io.*;
public class ReadDokument {
public static void main(String[] args) throws IOException
{
String objekt;
String suchstring;
String ersetzungsstring;
String ausgabeobjekt;
objekt = Stdin.readlnString("Woraus soll gelesen werden?: ");
ausgabeobjekt = Stdin.readlnString("Wohin soll geschreiben werden?: ");
suchstring = Stdin.readlnString("Bitte Suchstring angeben: ");
ersetzungsstring = Stdin.readlnString("Bitte Ersetzungsstring angeben: ");
FileReader fileReader = new FileReader(new File(objekt));
BufferedReader in = new BufferedReader(fileReader);
String s = in.readLine();
File out = new File(ausgabeobjekt);
try {
FileWriter ausgabe = new FileWriter(out);
BufferedWriter raus = new BufferedWriter(ausgabe);
while ( s != null) {
raus.write(s.replace(suchstring, ersetzungsstring) + "\n");
System.out.println(s.replace(suchstring, ersetzungsstring));
s = in.readLine();
}
//Schließe den InputStream
raus.close();
ausgabe.close();
}
catch (IOException e) {
System.err.println(e.toString());
}
in.close();
fileReader.close();
}
}