java 文件夹删除_Java删除文件夹和文件
以前在javaeye看到過關于Java操作文件的一篇文章,寫的很好,但找了半天也沒找到,就把找到底幾篇文章整理一下,做個總結,算是一個學習備份……
1,驗證傳入路徑是否為正確的路徑名(Windows系統,其他系統未使用)
Java代碼
//?驗證字符串是否為正確路徑名的正則表達式
private?static?String?matches?=?"[A-Za-z]:\\\\[^:?\">
//?通過?sPath.matches(matches)?方法的返回值判斷是否正確
//?sPath?為路徑字符串
2,通用的文件夾或文件刪除方法,直接調用此方法,即可實現刪除文件夾或文件,包括文件夾下的所有文件
Java代碼
/**
*??根據路徑刪除指定的目錄或文件,無論存在與否
*@param?sPath??要刪除的目錄或文件
*@return?刪除成功返回?true,否則返回?false。
*/
public?boolean?DeleteFolder(String?sPath)?{
flag?=?false;
file?=?new?File(sPath);
//?判斷目錄或文件是否存在
if?(!file.exists())?{??//?不存在返回?false
return?flag;
}?else?{
//?判斷是否為文件
if?(file.isFile())?{??//?為文件時調用刪除文件方法
return?deleteFile(sPath);
}?else?{??//?為目錄時調用刪除目錄方法
return?deleteDirectory(sPath);
}
}
}
3,實現刪除文件的方法,
Java代碼
/**
*?刪除單個文件
*?@param???sPath????被刪除文件的文件名
*?@return?單個文件刪除成功返回true,否則返回false
*/
public?boolean?deleteFile(String?sPath)?{
flag?=?false;
file?=?new?File(sPath);
//?路徑為文件且不為空則進行刪除
if?(file.isFile()?&&?file.exists())?{
file.delete();
flag?=?true;
}
return?flag;
}
4,實現刪除文件夾的方法,
Java代碼
/**
*?刪除目錄(文件夾)以及目錄下的文件
*?@param???sPath?被刪除目錄的文件路徑
*?@return??目錄刪除成功返回true,否則返回false
*/
public?boolean?deleteDirectory(String?sPath)?{
//如果sPath不以文件分隔符結尾,自動添加文件分隔符
if?(!sPath.endsWith(File.separator))?{
sPath?=?sPath?+?File.separator;
}
File?dirFile?=?new?File(sPath);
//如果dir對應的文件不存在,或者不是一個目錄,則退出
if?(!dirFile.exists()?||?!dirFile.isDirectory())?{
return?false;
}
flag?=?true;
//刪除文件夾下的所有文件(包括子目錄)
File[]?files?=?dirFile.listFiles();
for?(int?i?=?0;?i?
//刪除子文件
if?(files[i].isFile())?{
flag?=?deleteFile(files[i].getAbsolutePath());
if?(!flag)?break;
}?//刪除子目錄
else?{
flag?=?deleteDirectory(files[i].getAbsolutePath());
if?(!flag)?break;
}
}
if?(!flag)?return?false;
//刪除當前目錄
if?(dirFile.delete())?{
return?true;
}?else?{
return?false;
}
}
5,main() 方法
Java代碼
public?static?void?main(String[]?args)?{
HandleFileClass?hfc?=?new?HandleFileClass();
String?path?=?"D:\\Abc\\123\\Ab1";
boolean?result?=?hfc.CreateFolder(path);
System.out.println(result);
path?=?"D:\\Abc\\124";
result?=?hfc.DeleteFolder(path);
System.out.println(result);
}
main() 方法只是做了一個簡單的測試,建立文件夾和文件都是本地建立,情況考慮的應該很全面了,包括文件夾包含文件夾、文件。文件的不同情況…………
實現沒有問題,可以正確刪除文件夾和文件。
對于其他類型文件的操作繼續學習…………
總結
以上是生活随笔為你收集整理的java 文件夹删除_Java删除文件夹和文件的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Appium wait等待的三种方法
- 下一篇: Java捕获并处理线程失败抛出的异常