Witam,
Postanowilem sobie zrobic program, ktorego bardzo mi brakuje na windzie, a ze akurat bawie sie w javie, to wiadomo w czym chcialem go napisac ;).
Chodzi o tytulowy tail. Polega on na wyswietleniu ostatnich linijek pliku textowego (mi chodzi dokladnie o ostatnia), natomiast parametr -f oznacza ciagle sprawdzanie czy nastapila jakas zmiana w pliku.
Program powstal:
public class Main {
public Main() {
}
public static void main(String[] args) {
String linia = "";
String text = "";
String sciezka = "C:\\Documents and Settings\\Koru\\Pulpit\\1.txt";
int before = 0;
int after = 0;
while (true) {
try {
FileReader fr = new FileReader(sciezka);
BufferedReader bfr = new BufferedReader(fr);
while ((linia = bfr.readLine()) != null) {
text = linia;
after++;
}
if (after != before) {
System.out.println(text);
before = after;
}
after = 0;
bfr.close();
} catch (IOException ex) {
System.out.println("Błąd przy operacji na pliku: " + ex);
}
}
}
}
Wszystko dziala, ale badzmy szczerzy - dziala strasznie zamulajaco. Wiem, ze petla while i ciagle otwierania i zamykanie pliku zabija ten program, ale na nic lepszego nie wpadlem. Prosilbym bardziej o sugestie niz o gotowe rozwiazania, w koncu chce sie nauczyc javy, a nie kopiowac i wklejac gotowe zrodla :P.
Z gory dziekuje za pomoc