A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 我来了 中级黑马   /  2015-12-5 02:24  /  2664 人查看  /  7 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

16黑马币
删除某个文件夹,文件夹里还有文件夹和文件,求个具体代码

最佳答案

查看完整内容

大哥,比较详细的答案了,上面的哥们分够了,给我最佳答案吧{:2_36:} import java.io.File; import java.util.Scanner; public class Test7 { /** * 从键盘接收一个文件夹路径,删除该文件夹 */ public static void main(String[] args) { } //判断给定的路径是文件夹的路径 public static File getDir(){ Scanner sc = new Scanner(System.in); System.out.println("请输入一个文件夹路径"); while(true){ ...

7 个回复

倒序浏览
大哥,比较详细的答案了,上面的哥们分够了,给我最佳答案吧{:2_36:}

import java.io.File;
import java.util.Scanner;

public class Test7 {

        /**
         * 从键盘接收一个文件夹路径,删除该文件夹
         */
        public static void main(String[] args) {
               
        }
        //判断给定的路径是文件夹的路径
        public static File getDir(){
                Scanner sc = new Scanner(System.in);
                System.out.println("请输入一个文件夹路径");
                while(true){
                String s = sc.nextLine();
                File dir = new File(s);
                if(!dir.isDirectory()){
                        System.out.println("您输入的文件夹路径不存在,请重新录入 ");
                }else if (dir.isFile()){
                        System.out.println("您录入的是文件路径,请录入文件夹路径");
                }else{
                        return dir;
                }
                }
        }
        //删除功能
        public static void deleteDir(File dir){
                File[] file = dir.listFiles();//生成文件数组
                for (File file2 : file) {
                        if(file2.isFile()){
                                file2.delete();//删除文件
                        }else if (file2.isDirectory()){
                                deleteDir(file2);//递归删除内部文件夹
                        }
                }
                dir.delete();//删除空白文件夹
        }
}
回复 使用道具 举报
        public static void main(String[] args) {
                File dir = Test1.getDir();                                        //获取文件夹路径
                deleteFile(dir);
        }

        /*
         * 删除该文件夹
         * 1,返回值类型 void
         * 2,参数列表File dir
         */
        public static void deleteFile(File dir) {       
                //1,获取该文件夹下的所有的文件和文件夹
                File[] subFiles = dir.listFiles();               
                //2,遍历数组
                for (File subFile : subFiles) {
                        //3,判断是文件直接删除
                        if(subFile.isFile()) {
                                subFile.delete();
                        //4,如果是文件夹,递归调用
                        }else {
                                deleteFile(subFile);                       
                        }
                }
                //5,循环结束后,把空文件夹删掉
                dir.delete();
        }
回复 使用道具 举报
public class delateFIle {

        public static void main(String[] args) {
                File file=getFile();
                dellatef(file);
        }

        private static void dellatef(File file) {
                File[]file1=file.listFiles();
                for (File file2 : file1) {
                        if(file2.isFile()){
                                file2.delete();
                        }else{
                                dellatef(file2);
                        }
                }
                file.delete();
        }

        private static File getFile() {
                Scanner sc=new Scanner(System.in);
                System.out.println("请重新输入");
                while (true) {
                        String str=sc.nextLine();
                        File file=new File(str);
                        if(!file.exists()){
                                System.out.println("你输入的文件不存在");
                        }else if(file.isFile()){
                                System.out.println("你输入的是文件路径");
                        }else{
                                return file;
                        }
                }
        }

}
回复 使用道具 举报
我是第一个给你答案的干嘛不把分给我啊??我正好差一个技术分啊!!!!!!!!!!
回复 使用道具 举报
文件夹不能直接删除 需要先遍历文件 一个一个的删除文件以后 再来删除空的文件夹
回复 使用道具 举报
不错不错,  小伙们都不错!加油!
回复 使用道具 举报
毕老师的视频都讲了,为啥不仔细看呢?
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马