您的位置:首页 > 编程语言 > Java开发

Java 删除文件或文件夹

2015-08-13 12:00 585 查看
package book.io;

import java.io.File;

/**

*

* @author XWZ

* 2007-11-27

* 删除文件或目录

*/

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;

}

}

public static void main(String[] args) {

//String fileName = "g:/temp/xwz.txt";

//DeleteFileUtil.deleteFile(fileName);

String fileDir = "G:/temp/temp0/temp1";

//DeleteFileUtil.deleteDirectory(fileDir);

DeleteFileUtil.delete(fileDir);

}

}

原创
http://blog.csdn.net/z69183787/article/details/28441303
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: