您好,登錄后才能下訂單哦!
java怎么刪除文件?針對這個問題,這篇文章詳細介紹了相對應的分析和解答,希望可以幫助更多想解決這個問題的小伙伴找到更簡單易行的方法。
package test816; import java.io.File; /** * * 刪除文件或目錄 * */ public class DeleteFileUtil { /** * 刪除文件,可以是單個文件或文件夾 * * @param fileName * 待刪除的文件名 * @return 文件刪除成功返回true,否則返回false */ public static boolean delete(String fileName) { File file = new File(fileName); if (!file.exists()) { System.out.println("刪除文件失敗:" + fileName + "文件不存在"); return false; } else { if (file.isFile()) { return deleteFile(fileName); } else { return deleteDirectory(fileName); } } } /** * 刪除單個文件 * * @param fileName * 被刪除文件的文件名 * @return 單個文件刪除成功返回true,否則返回false */ public static boolean deleteFile(String fileName) { File file = new File(fileName); if (file.isFile() && file.exists()) { file.delete(); System.out.println("刪除單個文件" + fileName + "成功!"); return true; } else { System.out.println("刪除單個文件" + fileName + "失敗!"); return false; } } /** * 刪除目錄(文件夾)以及目錄下的文件 * * @param dir * 被刪除目錄的文件路徑 * @return 目錄刪除成功返回true,否則返回false */ public static boolean deleteDirectory(String dir) { // 如果dir不以文件分隔符結尾,自動添加文件分隔符 if (!dir.endsWith(File.separator)) { dir = dir + File.separator; } File dirFile = new File(dir); // 如果dir對應的文件不存在,或者不是一個目錄,則退出 if (!dirFile.exists() || !dirFile.isDirectory()) { System.out.println("刪除目錄失敗" + dir + "目錄不存在!"); return false; } boolean flag = true; // 刪除文件夾下的所有文件(包括子目錄) File[] files = dirFile.listFiles(); for (int i = 0; i < files.length; i++) { // 刪除子文件 if (files[i].isFile()) { flag = deleteFile(files[i].getAbsolutePath()); if (!flag) { break; } } // 刪除子目錄 else { flag = deleteDirectory(files[i].getAbsolutePath()); if (!flag) { break; } } } if (!flag) { System.out.println("刪除目錄失敗"); return false; } // 刪除當前目錄 if (dirFile.delete()) { System.out.println("刪除目錄" + dir + "成功!"); return true; } else { System.out.println("刪除目錄" + dir + "失敗!"); return false; } } // 刪除文件夾 // param folderPath 文件夾完整絕對路徑 public static void delFolder(String folderPath) { try { delAllFile(folderPath); // 刪除完里面所有內容 String filePath = folderPath; filePath = filePath.toString(); java.io.File myFilePath = new java.io.File(filePath); myFilePath.delete(); // 刪除空文件夾 } catch (Exception e) { e.printStackTrace(); } } // 刪除指定文件夾下所有文件 // param path 文件夾完整絕對路徑 public static boolean delAllFile(String path) { boolean flag = false; File file = new File(path); if (!file.exists()) { return flag; } if (!file.isDirectory()) { return flag; } String[] tempList = file.list(); File temp = null; for (int i = 0; i < tempList.length; i++) { if (path.endsWith(File.separator)) { temp = new File(path + tempList[i]); } else { temp = new File(path + File.separator + tempList[i]); } if (temp.isFile()) { temp.delete(); } if (temp.isDirectory()) { delAllFile(path + "/" + tempList[i]);// 先刪除文件夾里面的文件 delFolder(path + "/" + tempList[i]);// 再刪除空文件夾 flag = true; } } return flag; } public static void main(String[] args) { // String fileName = "g:/temp/xwz.txt"; // DeleteFileUtil.deleteFile(fileName); String fileDir = "D:\\temp\\pom.xml"; // DeleteFileUtil.deleteDirectory(fileDir); DeleteFileUtil.delete(fileDir); DeleteFileUtil t = new DeleteFileUtil(); delFolder("c:/bb"); System.out.println("deleted"); } }
關于java怎么刪除文件問題的解答就分享到這里了,希望以上內容可以對大家有一定的幫助,如果你還有很多疑惑沒有解開,可以關注億速云行業資訊頻道了解更多相關知識。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。