读书人

资料操作(delete files)

发布时间: 2013-02-24 17:58:56 作者: rapoo

文件操作(delete files)

package com.evangelsoft.crosslink.jxnetworkselling.config.types;import java.io.File;/** * 删除文件和目录 *  * @author *** *  */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);elsereturn deleteDirectory(fileName);}}/** * 删除单个文件 *  * @param fileName *            要删除的文件的文件名 * @return 单个文件删除成功返回true,否则返回false */public static boolean deleteFile(String fileName) {File file = new File(fileName);// 如果文件路径所对应的文件存在,并且是一个文件,则直接删除if (file.exists() && file.isFile()) {if (file.delete()) {//System.out.println("删除单个文件" + fileName + "成功!");return true;} else {//System.out.println("删除单个文件" + fileName + "失败!");return false;}} 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 = DeleteFileUtil.deleteFile(files[i].getAbsolutePath());if (!flag)break;}// 删除子目录else if (files[i].isDirectory()) {flag = DeleteFileUtil.deleteDirectory(files[i].getAbsolutePath());if (!flag)break;}}if (!flag) {//System.out.println("删除目录失败!");return false;}// 删除当前目录if (dirFile.delete()) {//System.out.println("删除目录" + dir + "成功!");return true;} else {return false;}}public static void main(String[] args) {// 删除单个文件String file = "c:/test/test0/test1/test2/testFile.txt";DeleteFileUtil.deleteFile(file);System.out.println();// 删除一个目录String dir = "c:/test/test0/test1";DeleteFileUtil.deleteDirectory(dir);System.out.println();// 删除文件dir = "c:/test/test0";DeleteFileUtil.delete(dir);}}

读书人网 >编程

热点推荐