我正在使用一种方法使用file.delete()方法删除特定的预先存在的文件,如下所示
public void deleteFile(String fileName)throws IOException //To refine. Does not work
{
File file=new File("C:\\File Handling\\"+fileName+".txt");
boolean success=file.delete();
System.out.println(success);
}
但是,成功总是返回为false。 出了什么问题?
请告知如何使用java删除文件。
答案 0 :(得分:1)
在Windows上,您通常无法删除任何进程打开的文件。此外,您可能希望通过从命令行执行删除来检查您是否具有权限。
答案 1 :(得分:1)
您的代码在我的机器上完美运行。我只是将它包装在一个类中并使其静态以便由main()
调用public static void main(String[] args) throws IOException {
deleteFile("newfile");
}
public static void deleteFile(String fileName)throws IOException //To refine. Does not work
{
File file=new File("C:\\File Handling\\"+fileName+".txt");
boolean success=file.delete();
System.out.println(success);
}
答案 2 :(得分:0)
有时候windows可以很好地处理文件如何尝试使用方法deleteOnExit()方法,这样可以确保程序在代码中不会打开。在运行代码之前,您是否还仔细检查过该文件是否未在其他程序中打开?