问答详情
源自:2-1 File 类常用 API 介绍

文件删除的问题

public static void main(String[] args)  {

//使用双斜杠,转义字符或者使用反斜杠

File file = new File("E:\\2222");

// File file0 = new File("E:\\2222");

// File file1 = new File("E:"+File.separator);//设置分隔符

if(!file.exists()){

//mkdir()创建的是目录,mkdirs创建的是多级目录

file.mkdir();

File file0 = new File("E:\\2222\\s");

try {

//createNewFile()创建的是文件

file0.createNewFile();

} catch (IOException e) {

// TODO Auto-generated catch block

e.printStackTrace();

}

}else{

file.delete();

}

这段代码中,如果 E:\\2222 不存在则会创建一个,,接着创建 文件s。此时再次运行的话,文件E:\\2222 其实是存在的,但是却不能删除。为什么呢?

提问者:慕粉1052051344 2017-06-28 12:12

个回答

  • 慕粉202616489
    2017-06-28 14:49:16

    不能直接删除一个有子目录的目录,要用递归,一层一层从下往上删除子文件和子目录