每次用java编译一个函数时,创建一个新的唯一文件

每次用java编译一个函数时,创建一个新的唯一文件,java,file,Java,File,每次编译函数时创建一个新的唯一文件。 这意味着如果文件在程序执行之前已经存在 然后 它应该删除该文件并创建一个新文件并附加新数据。 或 在删除同一文件中已有的完整数据后添加内容 我创造了这样的东西 Writer output = new BufferedWriter(new FileWriter("C:\\" + bankAccNo + ".txt", true)); output.append(myRow.getCell(0).toString()+ "\n"); output.close()

每次编译函数时创建一个新的唯一文件。 这意味着如果文件在程序执行之前已经存在 然后 它应该删除该文件并创建一个新文件并附加新数据。 或 在删除同一文件中已有的完整数据后添加内容

我创造了这样的东西

Writer output = new BufferedWriter(new FileWriter("C:\\" + bankAccNo + ".txt", true));
output.append(myRow.getCell(0).toString()+ "\n");
output.close();

如果要在每次写入文件时覆盖文件内容,请使用append开关的
false

new FileWriter("<file>", false);
newfilewriter(“,false);

每次执行程序时,我都要创建一个同名的新文件。每次调用这些代码行时,它都会追加到文件中。但我想要的是,每次程序执行时,它都会创建一个同名的新文件。启动时只需执行
file.delete()
?我看不出这有多复杂。那是因为你正在调用append。只需直接写入流,而无需附加。您的问题与“每次编译函数时都有唯一的文件”有什么关系?请修复标题和问题描述。如果您使用FileWrite构造函数
append=true
,则字节将写入文件的末尾,而不是开头“是的,但我不希望。。。我每次写入时都需要附加数据,但在开始写入此文件之前,我想检查此文件是否已存在,然后用其他名称创建一个新文件……@Abhinav如果您想在每次启动应用程序时覆盖文件/打开文件
FileWriter(“,false))
是正确的选择,或是以其他方式修复您的问题描述。你也可以看看