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

Java 删除指定文件 和文件夹 注意区分相对路径和绝对路径

2017-07-11 10:12 766 查看
import java.io.File;

public class fileTest {

    public static void main(String []args){

        String strVectorFile = "D:\\test\\test.txt";

        deleteFile(strVectorFile);

        String strVectorDir = "D:\\test2";

        deleteDirectory(strVectorDir);

    }

    public static boolean deleteFile(String fileName){

        File file = new File(fileName);

        if(file.isFile() && file.exists()){

            Boolean succeedDelete = file.delete();

            if(succeedDelete){

                System.out.println("删除单个文件"+fileName+"成功!");

                return true;

            }

            else{

                System.out.println("删除单个文件"+fileName+"失败!");

                return true;

            }

        }else{

            System.out.println("删除单个文件"+fileName+"失败!");

            return 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;

        }

    }

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐