首页 > 编程语言 >java 遍历目录 删除目录 判断是否为目录

java 遍历目录 删除目录 判断是否为目录

时间:2022-09-30 15:11:50浏览次数:64  
标签:遍历 java System file println return 目录 out

删除目录

    private static boolean deleteDir(File file) {
        if (file == null || !file.exists()) {
            System.out.println("delete files fail, file doesn't exist.");
            return false;
        }
        if (file.isFile()) {
            return file.delete();
        }
        try (Stream<Path> walk = Files.walk(file.toPath())) {
            walk.sorted(Comparator.reverseOrder()).map(Path::toFile).forEach(curFile -> {
                System.out.println("path:" + curFile.getAbsolutePath());
                curFile.delete();
            });
        } catch (SecurityException ex) {
            System.out.println("exception while delete files." + ex.getMessage());
            return false;
        } catch (IOException ex) {
            System.out.println("exception while delete files, io exception." + ex.getMessage());
            return false;
        }
        if (file.exists()) {
            return false;
        }

        System.out.println("delete success.");
        return true;
    }

 

判断目录是否为空

        if(file.isDirectory()){
            if(file.list().length>0){
                System.out.println("目录不为空!");
            }else{
                System.out.println("目录为空!");
            }
        }else{
            System.out.println("这不是一个目录!");
        }
    }

 

遍历目录

Files.walk(file.toPath()).map(Path::getFileName).forEach(System.out::println);

 

标签:遍历,java,System,file,println,return,目录,out
From: https://www.cnblogs.com/SaraMoring/p/16744962.html

相关文章

  • Java GUI编程(二)Swing
    一,窗口 二,弹窗publicclassDialogDemoextendsJFrame{publicDialogDemo(){this.setVisible(true);this.setSize(700,500);thi......
  • java mail实现POP3协议收件的Oauth认证
    1.背景   有team使用了office365的国际版邮箱进行收发邮件,但是微软会在十月一后关闭基本身份认证,选择使用OAuth身份验证连接IMAP、POP或SMTP协议,微软给出了相......
  • Java:通过标记直接跳出嵌套的循环结构
    这是我在刷面试题的时候遇到的一个使用方法,之前甚至对这种方法闻所未闻,不禁感慨自己的才疏学浅。闲话少说,直接进入正题。具体的使用就是在需要跳出的循环结构前面加一个......
  • java支持的运算符以及作用
    java语言支持如下运算符,优先级使用括号(),算数运算符:+,-,*,/,%(取余运算,或模运算),++(自增),--(自减)赋值运算符:=inta=10(把10赋值给a)关系运算符:>,<,>=,<=,==(java里等......
  • JavaScript大文件(百M以上)的上传下载实现技术
    ​最近遇见一个需要上传超大大文件的需求,调研了七牛和腾讯云的切片分段上传功能,因此在此整理前端大文件上传相关功能的实现。在某些业务中,大文件上传是一个比较重要的交......
  • NOIP冲刺 【图论复习】 图的遍历
    还有两个月就NOIP了我居然还在敲这种东西.........洛谷P5318DFSBFS模版题复习一下DFS:从第一个节点开始搜用vis数组记忆化搜到每一个点时如果没搜过就把他标记......
  • 常用注解:Java、Spring框架
    Java8SpringFramework/Boot/Web-- Java中的注解【很神奇】。ben发布于博客园虽然用过很多,但是,对其感知仍然模糊,应该是对它们的使用原理不清楚所致。本文仅整理一......
  • 【java基础】HashSet插入顺序问题
    总结:1、HashSet底层的插入是通过HashMap来实现的2、HashSet并不按照插入的顺序存储,它是无序的3、LinkedHashSet中的元素可以按照它们插入规则集的顺序提取@Test......
  • java 多线程
    线程的状态:New、Runnable、Blocked、Waiting、Timedwaiting、Terminated  newThread()——>New、start()——>Runnable、等待资源——>Blocked、wait()——>waiting......
  • PowerDesigner提示Could not Initialize JavaVM!
    PowerDesigner逆向mysql数据库报CouldnotInitializeJavaVM!提示,是因为powerdesigner基于32位JVM的原因。解决办法:安装32位的JDK或者安装mysql的ODBC驱动(重要提示:务......