文件刪除的問(wèn)題
public static void main(String[] args) ?{
//使用雙斜杠,轉(zhuǎn)義字符或者使用反斜杠
File file = new File("E:\\2222");
// File file0 = new File("E:\\2222");
// File file1 = new File("E:"+File.separator);//設(shè)置分隔符
if(!file.exists()){
//mkdir()創(chuàng)建的是目錄,mkdirs創(chuàng)建的是多級(jí)目錄
file.mkdir();
File file0 = new File("E:\\2222\\s");
try {
//createNewFile()創(chuàng)建的是文件
file0.createNewFile();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}else{
file.delete();
}
這段代碼中,如果?E:\\2222 不存在則會(huì)創(chuàng)建一個(gè),,接著創(chuàng)建 文件s。此時(shí)再次運(yùn)行的話,文件E:\\2222 其實(shí)是存在的,但是卻不能刪除。為什么呢?
2017-06-28
不能直接刪除一個(gè)有子目錄的目錄,要用遞歸,一層一層從下往上刪除子文件和子目錄