2

我需要清除运行 Linux 的服务器中某个日志文件的内容。我需要通过从我的程序中调用一个在不同服务器上运行的方法来做到这一点。请帮帮我。我的程序使用 Java 技术,所以我需要一个 Java 代码。

4

2 回答 2

4

您可以尝试以下方法:


import java.io.BufferedWriter;
import java.io.FileWriter;
import java.io.IOException;

// code

public static void clearFile(String fileLocation){ try{ BufferedWriter bw = new BufferedWriter(new FileWriter(fileLocation)); bw.write(""); bw.flush(); bw.close(); }catch(IOException ioe){ // You should really do something more appropriate here ioe.printStackTrace(); } }</pre></code>

因为 FileWriters 不会追加,除非你明确告诉他们。

于 2011-02-03T07:40:05.920 回答
4

吉格是对的。你可以只删除文件。但可能更好地配置生成此日志的程序的日志记录。我的意思是,例如,如果创建日志的程序也是用 java 编写的,并使用 log4j 配置适当的 appender 以在电流达到某个阈值(按大小)时启动新文件。您还可以配置要保存多少历史日志文件等。因此,您甚至可能不必使用其他程序删除文件。

于 2011-02-03T07:34:26.000 回答