在不使用 FileUtils 的情况下在目录 java 中添加新文件之前删除旧文件
Delete old files before adding new files in directory java without using FileUtils
我每天都在将新文件写入目录。
BufferedWriter bw = new BufferedWriter(new FileWriter("C:\difftest\newfiles\"+decisionList.get(i)+"_"+i+".txt"));
在创建新文件之前,我想删除文件夹中以前添加的文件。并且以前的文件不会被新文件覆盖,因为文件名不同。我怎样才能做到这一点?
以下代码可能会有所帮助。
(这只是您可以做什么的想法,我不确定是否存在错误。)
public class rename
{
public static void main(String[] argv) throws IOException
{
// Path of folder where files are located
String folder_path =
"C:\Users\Anannya Uberoi\Desktop\myfolder";
// creating new folder
File myfolder = new File(folder_path);
File[] file_array = myfolder.listFiles();
for (int i = 0; i < file_array.length; i++)
{
if (file_array[i].isFile())
{
File myfile = new File(folder_path +
"\" + file_array[i].getName());
myfile.delete();
}
}
}
}
您可以使用这个线性代码从给定目录中删除所有现有文件,
Arrays.asList(new File("C:\difftest\newfiles").listFiles()).stream().forEach(File::delete);
所以,只需将这行代码放在 BufferedWriter 行之前,就像这样,
Arrays.asList(new File("C:\difftest\newfiles").listFiles()).stream().forEach(File::delete);
BufferedWriter bw = new BufferedWriter(new FileWriter("C:\difftest\newfiles\"+decisionList.get(i)+"_"+i+".txt"));
我每天都在将新文件写入目录。
BufferedWriter bw = new BufferedWriter(new FileWriter("C:\difftest\newfiles\"+decisionList.get(i)+"_"+i+".txt"));
在创建新文件之前,我想删除文件夹中以前添加的文件。并且以前的文件不会被新文件覆盖,因为文件名不同。我怎样才能做到这一点?
以下代码可能会有所帮助。
(这只是您可以做什么的想法,我不确定是否存在错误。)
public class rename
{
public static void main(String[] argv) throws IOException
{
// Path of folder where files are located
String folder_path =
"C:\Users\Anannya Uberoi\Desktop\myfolder";
// creating new folder
File myfolder = new File(folder_path);
File[] file_array = myfolder.listFiles();
for (int i = 0; i < file_array.length; i++)
{
if (file_array[i].isFile())
{
File myfile = new File(folder_path +
"\" + file_array[i].getName());
myfile.delete();
}
}
}
}
您可以使用这个线性代码从给定目录中删除所有现有文件,
Arrays.asList(new File("C:\difftest\newfiles").listFiles()).stream().forEach(File::delete);
所以,只需将这行代码放在 BufferedWriter 行之前,就像这样,
Arrays.asList(new File("C:\difftest\newfiles").listFiles()).stream().forEach(File::delete);
BufferedWriter bw = new BufferedWriter(new FileWriter("C:\difftest\newfiles\"+decisionList.get(i)+"_"+i+".txt"));