0

如果我有以下代码:

private PrintWriter m_Writer;
m_Writer = new PrintWriter(new FileWriter(k_LoginHistoryFile));

我正在写入服务器上的本地文件,名称为k_LoginHistoryFile.
现在,当我的程序运行时,它会写入这个文件,那么我怎样才能删除每次写入之间的所有文件内容呢?
我认为这很重要,因为我不想写入一个文件,该文件最终将在其开头包含当前更新的信息 + 在其结尾处不是最新信息。

提前致谢

4

2 回答 2

7

这个表达式:

new FileWriter(k_LoginHistoryFile)

如果存在,将截断您的文件。它不仅会覆盖文件的开头。目前尚不清楚这段代码执行的频率,但每次执行时,您都会启动一个新文件(并有效地删除旧内容)。

于 2012-05-21T18:02:47.993 回答
1

I think it is important as I don't want to write to a file which will eventually have current updated information on its beginning + not up to date info at its end.

If you want to keep a running output file (and you can't keep the file open), consider this constructor: FileWriter(String, boolean)

If the boolean is true, your updated information will be at the end of the file.

于 2012-05-21T18:07:46.257 回答