Java 无法使用file.delete()删除文件

Java 无法使用file.delete()删除文件,java,Java,我无法删除我的文件,我已在此处查找,但找不到答案。 我有权删除,文件,文件存在。下面是一个类,其中包含一个方法删除文件 public boolean deleteFile(String filePath) { File fileToDelete = new File(filePath); System.out.println("In delete file(): "+fileToDelete.exists());

我无法删除我的文件,我已在此处查找,但找不到答案。 我有权删除,文件,文件存在。下面是一个类,其中包含一个方法删除文件

public boolean deleteFile(String filePath)
    {

            File fileToDelete = new File(filePath);
            System.out.println("In delete file(): "+fileToDelete.exists());
            boolean deleted = fileToDelete.delete();
            return deleted;

    }
我有一个按钮,它有一个动作监听器,可以根据一个常量字符串文件路径删除一个文件

STFile file = new STFile();
System.out.println("Deleting from"+STMain.TITLES_PATH+""+file.deleteFile(STMain.TITLES_PATH));


public static final String TITLES_PATH = System.getProperty("user.dir")+"\\titlesPath.txt";
    public static final String IMAGES_PATH = System.getProperty("user.dir")+"\\imagesPath.txt";
    public static final String SOUNDS_PATH = System.getProperty("user.dir")+"\\soundPath.txt";
文件存在,目录存在,我可以知道是什么阻止我删除它们吗? 是因为我有一个fileoutputstream吗?但是我关闭了它们,顺便说一句,qnsTitle、qnsImagePath、qnsSoundPath都是包含字符串的ArrayList

public void writeFiles()
    {
        FileOutputStream f_out = null;
        ObjectOutputStream obj_out = null;
        try {
            f_out = new FileOutputStream(STMain.TITLES_PATH);
            obj_out = new ObjectOutputStream (f_out);
            obj_out.writeObject(qnsTitle);
            f_out.close();
            f_out = new FileOutputStream(STMain.IMAGES_PATH);
            obj_out = new ObjectOutputStream (f_out);
            obj_out.writeObject(qnsImagePath);
            f_out.close();
            f_out = new FileOutputStream(STMain.SOUNDS_PATH);
            obj_out = new ObjectOutputStream (f_out);
            obj_out.writeObject(qnsSoundPath);
            f_out.close();
        } catch (IOException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }
    }

在writeFiles()方法中,将close()写入finally块中,以确保它被执行。

在writeFiles()方法中,将close()写入finally块中,以确保它被执行。

您可能无权修改包含文件的目录的内容。你对该目录有写权限吗?您能用
文件
类创建目录对象并检查
是否可写()
?请在这里给出一个例外,这样我们就可以解决这个问题。STMain.TITLESPATH的答案是什么,表示它显示的是哪条路径。你能将路径粘贴到这里吗?当我运行该方法时没有引发异常,它只是不断返回false。你可能没有权限修改包含文件的目录的内容。你对该目录有写权限吗?您能用
文件
类创建目录对象并检查
是否可写()
?请在这里给出一个例外,这样我们就可以解决这个问题。STMain.TITLESPATH的答案是什么,表示它显示的是哪条路径。你能把路径粘贴到这里吗?当我运行这个方法时,没有引发异常,它只是不断返回一个false。谢谢,除了writeFiles,我还有一个readFile方法来读取文件,在这个方法中我没有关闭它们,这应该是我无法删除它们的原因。谢谢,除了writefile,我还有一个readFile方法来读取文件,在这个方法中我没有关闭它们,这就是为什么我不能删除它们。