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学问请关注java基础教程。
以上就是java中怎样删除文件的细致内容,更多请关注ki4网别的相干文章!