gpt4 book ai didi

java - 无法在Java中重命名和删除文件

转载 作者:行者123 更新时间:2023-12-01 09:07:59 26 4
gpt4 key购买 nike

我正在使用 NetBeans 在 Java 中做一个项目,我需要修改一个文件。所以我在另一个临时文件中覆盖整个文件,但最后我无法重命名临时文件或删除主文件。有什么解决办法吗?

File tf = new File("F:\\nb\\project_inventory\\temp.tmp");

FileReader fr = new FileReader("F:\\nb\\project_inventory\\Employee_info.txt");
BufferedReader br =new BufferedReader(fr);

FileWriter fw = new FileWriter(tf);
PrintWriter bw =new PrintWriter(fw);
String line;
while((line=br.readLine())!=null)
{
if(line.contains(del_id)) continue;

bw.println(line);
}

bw.close();
fw.close();
br.close();
fr.close();
File real =new File("F:\\nb\\project_inventory\\Employee_info.txt");
real.delete();
tf.renameTo(real);

最佳答案

我刚刚尝试了上面的 5 个项目行,如下所示,并得到了所需的结果,

    File real =new File("F:\\nb\\project_inventory\\Employee_info.txt");
real.delete();

File tf = new File("F:\\nb\\project_inventory\\temp.tmp");
try{
tf.createNewFile(); // for creating the new file
}
catch(IOException e){
e.printstacktrace();
}
File real =new File("F:\\nb\\project_inventory\\Employee_info.txt");
tf.renameTo(real);

Employee_info.txt 被删除,temp.tmp 也被重命名为 Employee_info.txt。

此外,始终建议将删除/重命名的代码放在 try/catch block 中,如下所示:

 try{
File real =new File("F:\\nb\\project_inventory\\Employee_info.txt");
real.delete();
}
catch(IOException e){
e.printstacktrace();
}

请提供错误消息,以便为您提供进一步帮助。

关于java - 无法在Java中重命名和删除文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41099849/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com