Hallo @ all... mein erster Beitrag! 
kl. Vorgeschichte
Hab mit Java ein kleines Grafisches Tool gebaut. (PingIt)
Das Tool pingt nach verschiedenen Hosts und zeigt die erreichbarkeit Grafisch an.
Jeder Ping wird in einer log.txt gespeichert. Diese log wird wieder in einem Fester ausgegeben.
Nun zu meinem Problem:
Ich schriebe eine xxx.txt die immer größer wird.
Neue Zeilen kann ich an die Datei nur Anhängen.
Frage: Kann ich die Zeile nicht an die erste Position schrieben ohne das ich erst alle
Zeilen einlesen muss????
Auslesen kann ich einen Datei nur von oben nach unten...
Frage:Geht es wirklich nicht anders???
Ich will nur die letzten 200 Zeilen anzeigen lassen!
Momentan löse ich das Problem so: ---> Ist bei großen Datein aber viel zu langsam...
In einem Thread schreibe ich immer wieder in eine LogDatei
Ein anderer Thread liest nun diese Datei
// Alle Zeilen aus der Datei lesen
while ( (zeile=br.readLine()) != null ) {
zeilen=zeilen+zeile+"&&&";
i++;
}
//letzte 200 Zeilen in einen neuen Sting packen
String [] logZeilen = zeilen.split("&&&"); // Hab bei Java 1.4 keine List
String logText = "";
for (int j=logZeilen.length-1; j > logZeilen.length-200; j--) {
logText=logText + logZeilen[j] +"\n";
}
//Ausgabe
esf.jEditorPane2.setText(logText);
Also so geht es mehr schlecht als recht...
Ich brauche eine !!schnelle!! Möglichkeit um entweder neue Zeilen an den Anfang einer Datei zu schreiben oder eine bei der ich die letzten 200 Zeilen einer Datei auslesen kann.
Hab schon selber im Internet und in meinen Büchern gesucht aber leider nichts gefunden was mir weiter helfen konnte.
kl. Vorgeschichte
Hab mit Java ein kleines Grafisches Tool gebaut. (PingIt)
Das Tool pingt nach verschiedenen Hosts und zeigt die erreichbarkeit Grafisch an.
Jeder Ping wird in einer log.txt gespeichert. Diese log wird wieder in einem Fester ausgegeben.
Nun zu meinem Problem:
Ich schriebe eine xxx.txt die immer größer wird.
Neue Zeilen kann ich an die Datei nur Anhängen.
Frage: Kann ich die Zeile nicht an die erste Position schrieben ohne das ich erst alle
Zeilen einlesen muss????
Auslesen kann ich einen Datei nur von oben nach unten...
Frage:Geht es wirklich nicht anders???
Ich will nur die letzten 200 Zeilen anzeigen lassen!
Momentan löse ich das Problem so: ---> Ist bei großen Datein aber viel zu langsam...
In einem Thread schreibe ich immer wieder in eine LogDatei
Ein anderer Thread liest nun diese Datei
// Alle Zeilen aus der Datei lesen
while ( (zeile=br.readLine()) != null ) {
zeilen=zeilen+zeile+"&&&";
i++;
}
//letzte 200 Zeilen in einen neuen Sting packen
String [] logZeilen = zeilen.split("&&&"); // Hab bei Java 1.4 keine List
String logText = "";
for (int j=logZeilen.length-1; j > logZeilen.length-200; j--) {
logText=logText + logZeilen[j] +"\n";
}
//Ausgabe
esf.jEditorPane2.setText(logText);
Also so geht es mehr schlecht als recht...
Ich brauche eine !!schnelle!! Möglichkeit um entweder neue Zeilen an den Anfang einer Datei zu schreiben oder eine bei der ich die letzten 200 Zeilen einer Datei auslesen kann.
Hab schon selber im Internet und in meinen Büchern gesucht aber leider nichts gefunden was mir weiter helfen konnte.