Javaを使用してテキストファイルの最後の行を削除したいと思います。ただし、以下のコードはすべてを削除します。あなたは追加モードで開き、(したがって、単一write
操作は、ファイルの内容全体を拭きます)上書きモードでファイルを開いているテキストファイルの最後の行を削除します。
public void eraseLast()
{
while(reader.hasNextLine()) {
reader.nextLine();
if (!reader.hasNextLine()) {
try {
fWriter = new FileWriter("config/lastWindow.txt");
writer = new BufferedWriter(fWriter);
writer.write("");
writer.close();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
}
可能重複(http://stackoverflow.com/questions/9149648/deleting-the-last-line-of-a-file-with-java ) –
提示された答えはすべて不自然です。ファイルを切り捨てるのではなく、2ギガのファイルをループします。あなたがしたいのは、最後の行が終了して切り詰められることです。http://docs.oracle.com/javase/7/docs/api/java/nio/channels/FileChannel.html#truncate(long) –
@DMoses、私は非常にパフォーマンスに興味がありますので、私はそれを実行します – Ted