我想用Java编写一个文件而不清除(删除)该文件上的旧数据!
我运行此代码,发现每次运行后,.txt文件上的所有较旧数据都被清除了!
我的代码在这里:
import java.io.BufferedWriter;
import java.io.File;
import java.io.FileWriter;
import java.io.IOException;
public class WriteToFileExample {
public static void main(String[] args) {
try {
String content = "This is the content to write into file";
File file = new File("/users/mkyong/filename.txt");
// if file doesnt exists, then create it
if (!file.exists()) {
file.createNewFile();
}
FileWriter fw = new FileWriter(file.getAbsoluteFile());
BufferedWriter bw = new BufferedWriter(fw);
bw.write(content);
bw.close();
System.out.println("Done");
} catch (IOException e) {
e.printStackTrace();
}
}
}
使用FileWriter(String filename, boolean append)
可以指示在附加模式下打开文件的构造函数:
FileWriter fw = new FileWriter(file.getAbsoluteFile(), true);
//^^^^ means append
问题内容: 我有一个嵌入式Linux系统,该系统将数据存储在一个很大的文件中,并将新数据附加到末尾。随着文件大小逐渐接近可用存储空间,我需要删除最旧的数据。 问题是,我不能真正接受像往常一样将大量数据“向上”移动到文件上所造成的破坏-长时间锁定文件以重写它(加上这是闪存介质) ,则会对闪光灯造成不必要的磨损)。 可能最简单的方法是将文件拆分为多个较小的文件,但这与数据的处理和处理方式有关,这有几个
我使用下面的log4j2。xml 我想要的是旧的日志文件被删除,如果累积的大小超过。但是log4j2首先删除最近修改的文件。https://logging.apache.org/log4j/2.x/manual/appenders.html说有一个路径排序参数可以做到这一点。有人能告诉我如何指定相反的将逻辑排序为默认值?
问题内容: 我使用以下crontab记录来每天备份数据库: 我想添加另一个crontab记录,该记录将删除早于一个月的数据库转储。 有什么想法吗? 问题答案: 只需创建另一个cron: 它将查找所有早于30天的备份并将其删除。
问题内容: 我正在使用FileWriter写入文件,并注意到即使删除了文件(进程外),FileWriter也不会引发任何异常。 这正常吗? 问题答案: 这取决于您的操作系统: 在Windows上,通常无法删除打开的文件。 在Unix上,完全可以接受删除打开的文件并继续写入(或从中读取)文件。删除文件后,它将不再具有目录条目。但是,其内容将继续存在于磁盘上,直到关闭该文件。一旦所有引用该文件的打开句
我需要检查工作表是否存在。如果存在,您必须键入下一个现有行,并且不要创建新的工作表。 您当前正在删除当前的电子表格,而我在电子表格中只写了一行。 我该如何解决这个问题?
问题内容: 我实际上从未完全了解hibernate状态下的这种行为。我在名为“ Parent”的实体中使用@OneToMany关系,其注释如下: 现在,我想在一个事务中执行以下操作: 获取父实体 遍历孩子们的名单 删除其中一个孩子 插入一个新孩子 因此,基本上我只是完全替换其中一个孩子。 据我了解的这个问题,我应该能够做这样的事情:(请注意,这只是一些Java伪代码来说明问题) 但是,如果新的Ch