Ich schreibe ein Programm in Java, das erfordert, dass ich die Daten in 2 Dateien vergleiche. Ich muss jede Zeile von Datei 1 gegen jede Zeile von Datei 2 überprüfen und wenn ich eine Übereinstimmung finde, schreibe sie in eine dritte Datei. Nachdem ich bis zum Ende von Datei 2 gelesen habe, wie setze ich den Zeiger auf den Anfang der Datei zurück?Wie kann ich den Dateizeiger auf den Anfang der Datei in Java zurücksetzen?
public class FiFo {
public static void main(String[] args)
{
FileReader file1=new FileReader("d:\\testfiles\\FILE1.txt");
FileReader file2=new FileReader("d:\\testfiles\\FILE2.txt");
try{
String s1,s2;
while((s1=file1.data.readLine())!=null){
System.out.println("s1: "+s1);
while((s2=file2.data.readLine())!=null){
System.out.println("s2: "+s2);
}
}
file1.closeFile();
file2.closeFile();
}catch (IOException e) {
e.printStackTrace();
}
}
}
class FileReader {
BufferedReader data;
DataInputStream in;
public FileReader(String fileName)
{
try{
FileInputStream fstream = new FileInputStream(fileName);
data = new BufferedReader(new InputStreamReader(fstream));
}
catch (IOException e) {
e.printStackTrace();
}
}
public void closeFile()
{
try{
in.close();
}
catch (IOException e) {
e.printStackTrace();
}
}
}
Ok - Ich habe die Rechtschreibung und die Grammatik, ich mache nicht die Formatierung. – danben
Ich vermute, dass das Originalposter die Aufgabe falsch interpretierte und was eigentlich verlangt wurde, war ein degeneriertes 'diff'. Diese Schätzung basiert auf früheren Fragen des OP und der vergleichenden Schwierigkeit der Lösungen. – msw