我通过JNI调用一个C++方法,它会在给定的目录中创建两个文件:一个文本日志文件和一个PDF文件。我想在执行JNI方法之前删除这些文件(如果它们存在)。
我使用Apache commons.io(FileUtils.forceDelete(File file))来实现。但是执行时我遇到了一个IOException:
java.io.IOException: Unable to delete file: D:\Folder\file.log
在调用delete方法之前,我使用File.canWrite()方法检查文件的可写状态。对于文件和父目录,它都返回true。
你有什么想法为什么我删除文件时会遇到问题吗?据我所知,创建文件的C++方法在方法完成后关闭或解锁它们。无论如何,我无法访问C++代码的源代码,因此无法检查是否确实如此或修改代码。
谢谢,Marco