ログを作成していて、log.txtファイルの最後の行を読みたいのですが、最後の行が読み取られるとBufferedReaderを停止させるのに問題があります。
これが私のコードです:
try {
String sCurrentLine;
br = new BufferedReader(new FileReader("C:\\testing.txt"));
while ((sCurrentLine = br.readLine()) != null) {
System.out.println(sCurrentLine);
}
} catch (IOException e) {
e.printStackTrace();
} finally {
try {
if (br != null)br.close();
} catch (IOException ex) {
ex.printStackTrace();
}
}
これが良いです 解決策 。
コードでは、lastLine
という補助変数を作成し、次のように常に現在の行に再初期化することができます。
String lastLine = "";
while ((sCurrentLine = br.readLine()) != null)
{
System.out.println(sCurrentLine);
lastLine = sCurrentLine;
}
このスニペットはあなたのために働くはずです:
BufferedReader input = new BufferedReader(new FileReader(fileName));
String last, line;
while ((line = input.readLine()) != null) {
last = line;
}
//do something with last!