以树状结构输出计算机某个指定文件夹下的所有的文件和子文件夹名称

以树状结构输出计算机某个指定文件夹下的所有的文件和子文件夹名称

import java.io.File;  
  
/** 
 * 以树状结构输出计算机某个指定文件夹下的所有的文件和子文件夹名称 
 *  
 * @author FengYuan 
 * 
 */  
public class Test {  
    public static void main(String[] args) {  
        Test t = new Test(); // new一个对象  
        File f = new File("D:/ACL/acl-mvc");// new一个文件对象,路径自定义但要注意斜杠  
        t.bl(f, 0);// 调用方法  
    }  
  
    public void bl(File f, int lever) {  
        // 判断是否存在  
        if (f.exists()) {  
            // 判断是否是第一级目录  
            if (lever == 0) {  
                System.out.println(f.getName());// 一级目录只打名称  
            } else {  
                // 循环打空格  
                for (int i = 0; i < lever; i++) {  
                    System.out.print(" ");  
                }  
                System.out.println("├" + f.getName()); // 二级目录打标识符├  
            }  
            // 判断是不是目录  
            if (f.isDirectory()) {  
                // 列出所有文件及文件夹  
                File[] fs = f.listFiles();  
                // 判断fs是否为空  
                if (null != fs) {  
                    // 循环递归  
                    for (File s : fs) {  
                        bl(s, lever + 1);  
                    }  
                }  
            }  
        }  
    }  
}  

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/106331.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • npm 淘宝镜像使用[通俗易懂]

    【npm】利用npm安装/删除/发布/更新/撤销发布包目录什么是npm?利用npm安装包npm安装的方式——本地安装和全局安装利用npm删除包删除全局模块删除本地模块利用npm发布包第一次发布包:非第一次发布包:利用npm撤销发布包npm更新发布后的包:&nbsp;正文&…

    2022年4月17日
    38
  • ROC曲线的通俗理解

    ROC曲线的通俗理解在准备机器学习导论课程考试的过程中,发现自己根据西瓜书上的讲解总是也理解不上去ROC曲线的含义。于是在网络上寻求答案,发现一篇讲解得不错的博客【1】,说得比西瓜书好很多,通俗易懂。这里说一下自己的感想和理解对于已经有数据标签的训练样本,可以得到它们的评分: 其中class一栏表示真实值,p为正例,n为反例,这20个样本中有10个正例10个反例;score一栏则是分类器给出的分类评分。一…

    2022年5月16日
    48
  • 标志寄存器——标志位

    标志寄存器——标志位标志位简介:   标志寄存器,又称程序状态寄存器(它的内容是ProgramStatusWord,PSW).这是一个存放条件码标志,控制标志和系统标志的寄存器.6个状态标志位   CF—进位标志,加法时的最高位(D7或D15)产生进位或减法时最高位出现借位,则CF=1,否则CF=0;   AF—辅助进位标志,供BCD码使用。当D3位出现进位或借位时AF=1,否则AF=0

    2022年7月14日
    11
  • STM32中文参考手册_haar小波分解

    STM32中文参考手册_haar小波分解注:本文是程序的说明和实现思路,代码见:https://download.csdn.net/download/hnxyxiaomeng/10301718一、主要思路原始信号:OrgSig信号长度:DWT_SIG_LEN小波分解层数:N与MATLAB类似,小波分解后产生2个数组DWT_L和DWT_C,但定义与MATLAB不同。定义如下:DWT_L:[DWT_SIG_LEN,c…

    2022年10月19日
    0
  • Ant安装配置

    Ant安装配置先在http://ant.apache.org/下载Ant,例如我下载的是最新版的apache-ant-1.7.1-bin.zip文件,然后解压缩至E:/apache-ant-1.7.1,添加环境变量ANT_HOME=E:/apache-ant-1.7.1,在PATH变量中添加%ANT_HOME%/bin;,Ant就算是配置好了。环境:WindowsXP

    2022年7月18日
    13
  • SpringAOP学习–SpringAOP简介及原理

    SpringAOP学习–SpringAOP简介及原理前文对AOP做了介绍,实际项目中,一般不会直接上手手动实现aop,而是使用一些高级封装的aop实现,如SpringAOP。Spring是一个广泛应用的框架,SpringAOP则是Spring提供的一个标准易用的aop框架,依托Spring的IOC容器,提供了极强的AOP扩展增强能力,对项目开发提供了极大地便利。前文提到AOP的实现有AspectJ、JDK动态代理、CGLIB动态代理,SpringAOP不是一种新的AOP实现,其底层采用的是JDK/CGLIB动态代理。JDK动态代理回顾上一篇简单介绍了

    2022年8月11日
    2

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号