相关疑难解决方法(0)

file.delete()返回false,即使file.exists(),file.canRead(),file.canWrite(),file.canExecute()都返回true

我正在尝试删除一个文件,在写完文件后,用FileOutputStream.这是我用来编写的代码:

private void writeContent(File file, String fileContent) {
    FileOutputStream to;
    try {
        to = new FileOutputStream(file);
        to.write(fileContent.getBytes());
        to.flush();
        to.close();
    } catch (FileNotFoundException e) {
        // TODO Auto-generated catch block
        e.printStackTrace();
    } catch (IOException e) {
        // TODO Auto-generated catch block
        e.printStackTrace();
    }
}
Run Code Online (Sandbox Code Playgroud)

如图所示,我刷新并关闭流,但是当我尝试删除时,file.delete()返回false.

我删除前检查,看看是否该文件存在,并且:file.exists(),file.canRead(),file.canWrite(),file.canExecute()所有返回true.在调用这些方法后,我尝试file.delete()返回false.

有什么我做错了吗?

java file fileoutputstream

87
推荐指数
4
解决办法
17万
查看次数

如何在Java中删除包含其他文件夹的文件夹?

这是我试过的代码:

import java.io.*;
public class file03 {
    public static void main(String[] args) {
        File f1 = new File("C:/tempo1/tempo");
        f1.mkdirs();
        File f2 = new File("C:/test");
        if(!f2.exists()) {
            f2.mkdir();
        }
        f1 = new File("C:/tempo1/kempo");
        f1.mkdirs();
        f1 = new File("C:/tempo1");
        String[] t = {};
        if(f1.exists()) {
            t = f1.list();
            System.out.println(t.length + " files found");
        }
        for(int i = 0; i < t.length; i++) {
            System.out.println(t[i]);
        }
        try {
            Thread.sleep(3000);
        }
        catch(Exception e) {}
        f2.delete();
        f2 = new File("C:/tempo1/test.txt");
        try {
            f2.createNewFile();
        }
        catch(Exception …
Run Code Online (Sandbox Code Playgroud)

java directory file-io file bluej

3
推荐指数
1
解决办法
2159
查看次数

标签 统计

file ×2

java ×2

bluej ×1

directory ×1

file-io ×1

fileoutputstream ×1