无法删除java代码中的excel文件获取错误,因为该进程无法访问该文件,因为另一个进程正在使用该文件
使用java代码删除excel文件时出错 以下是例外 java.io.FileNotFoundException:D:\Finance Reports\ArvindBTA.xlsx( 进程无法访问该文件,因为另一个进程正在使用该文件 过程) 我使用的代码是无法删除java代码中的excel文件获取错误,因为该进程无法访问该文件,因为另一个进程正在使用该文件,java,multithreading,Java,Multithreading,使用java代码删除excel文件时出错 以下是例外 java.io.FileNotFoundException:D:\Finance Reports\ArvindBTA.xlsx( 进程无法访问该文件,因为另一个进程正在使用该文件 过程) 我使用的代码是 final File file=new File("E:\\book1.xlsx"); Runtime.getRuntime().exec("cmd /c taskkill /f /im excel.exe"); new Thread(ne
final File file=new File("E:\\book1.xlsx");
Runtime.getRuntime().exec("cmd /c taskkill /f /im excel.exe");
new Thread(new Runnable()
{
@Override
public void run()
{
try {
Thread.currentThread().sleep(2000);// you need to wait 1-2 sec to close file before delete
file.delete();
} catch (InterruptedException e) {
e.printStackTrace();
}
}
}).start();
您应该检查您试图删除的文件是否存在 请参考相同的语法
file.exists()
使用此检查可以确保文件存在
因此,如果删除,您的代码应该是
if(file.exists())
file.delete();
您还需要检查指定的路径上是否有文件。E:\book1.xlsx我尝试过使用file.exist(),但它不起作用,并且文件存在于同一路径中。是否有其他方法使用java删除文件