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中如何删除文件的详细内容。
