遍历指定目录下的所有文件和文件夹

 import java.io.File;

 public class FileTest {
public static void main(String[] args) {
File dir1 = new File("F:\\韩顺平");//如果该指定的目录不存在会发生NullPointerException List(dir1);
}
public static void List(File dir1) {
String[] file = dir1.list();
for(String files : file){
System.out.println(files);
}
}
}

需求:对指定目录进行所有内容的列出(包含子目录中的内容)也可以理解为深度遍历

import java.io.File;

public class FileTest {
public static void main(String[] args) {
File dir1 = new File("F:\\韩顺平");//如果该指定的目录不存在会发生NullPointerException ListAll(dir1);
}
//深度遍历
public static void ListAll(File dir1) { System.out.println("dir:"+dir1.getAbsolutePath()); //获取指定目录下当前的所有文件夹或者文件对象
File[] files = dir1.listFiles();
for (int i = 0; i < files.length; i++) {
if(files[i].isDirectory()){
ListAll(files[i]);
}else{
System.out.println("file:"+files[i].getAbsolutePath());
}
}
}
}

深度遍历列出层级目录:

import java.io.File;

public class FileTest {
public static void main(String[] args) {
File dir1 = new File("F:\\韩顺平");//如果该指定的目录不存在会发生NullPointerException ListAll(dir1,0);
}
//深度遍历
public static void ListAll(File dir1,int level) { System.out.println(getSpace(level)+dir1.getName());
level++; //获取指定目录下当前的所有文件夹或者文件对象
File[] files = dir1.listFiles();
for (int i = 0; i < files.length; i++) {
if(files[i].isDirectory()){
ListAll(files[i],level);
}else{
System.out.println(getSpace(level)+files[i].getName());
}
}
}
private static String getSpace(int level) {
StringBuilder sb = new StringBuilder();
for(int x = 0;x<level;x++){
sb.append(" |");
}
return sb.toString();
}
}

File类_深度遍历文件夹_练习的更多相关文章

  1. java中File类应用:遍历文件夹下所有文件

    练习: 要求指定文件夹下的所有文件,包括子文件夹下的文件 代码: package 遍历文件夹所有文件; import java.io.File; public class Test { public ...

  2. ORACEL上传BLOB,深度遍历文件夹

    // uploadingDlg.cpp : 实现文件// #include "stdafx.h"#include "uploading.h"#include & ...

  3. java 深度遍历文件夹中的所有文件

    看标题就知道是什么意思了吧,所以就不多说了,直接贴代码: import java.io.*; public class files { private static void iterateFile( ...

  4. Java深度遍历文件夹(递归实现)

    package FileDemo; import java.io.File; public class DeepSearchDir { /** * @param args */ public stat ...

  5. Java File类应用:递归遍历文件夹和递归删除文件

    要求: 1)采用递归遍历文件夹下的所有文件,包括子文件夹下的文件 2)采用递归删除文件下的所有文件 注意: 以下递归删除文件的方法,只能删除文件,所有的文件夹都还会存在 若要删除正文文件夹,可以在递归 ...

  6. Java多线程遍历文件夹,广度遍历加多线程加深度遍历结合

    复习IO操作,突然想写一个小工具,统计一下电脑里面的Java代码量还有注释率,最开始随手写了一个递归算法,遍历文件夹,比较简单,而且代码层次清晰,相对易于理解,代码如下:(完整代码贴在最后面,前面是功 ...

  7. 写个批处理脚本来帮忙干活--遍历文件夹&字符串处理

    这次打算写几篇关于脚本方面的博客,主要是记录一下 Gradle 脚本和批处理脚本的一些写法,方便后续查阅. 前言 平常开发过程中,一些较为重复的手工性工作,如果能让脚本来帮忙处理,自然是最好的,刚好之 ...

  8. golang遍历文件夹

    golang遍历文件夹: func main() { //方式一 filepath.Walk("temp/", func (path string, info os.FileInf ...

  9. JAVA7遍历文件夹

    在JAVA7中提供了新的遍历文件的方法,比原有File类的递归遍历效率要好大约30%左右. 测试结果: 测试用的File类的递归,是经过对比测试几种方法,找出相对效率较好的来和JAVA7进行测试. 1 ...

随机推荐

  1. Java 8 新特性-菜鸟教程 (8) -Java 8 日期时间 API

    Java 8 日期时间 API Java 8通过发布新的Date-Time API (JSR 310)来进一步加强对日期与时间的处理. 在旧版的 Java 中,日期时间 API 存在诸多问题,其中有: ...

  2. mysql计算两个日期相差的天数

    DATEDIFF() 函数可以返回两个日期之间的天数. 如下: SELECT DATEDIFF('2015-06-29','2015-06-12') AS DiffDate 结果得17 SELECT ...

  3. 【Elasticsearch全文搜索引擎实战】之Head插件实践

    简介 Elasticsearch是一个基于Lucene的搜索服务器.它提供了一个分布式多用户能力的全文搜索引擎,基于RESTful web接口.Elasticsearch是用Java开发的,并作为Ap ...

  4. Uboot 引导内核时加载地址与入口地址问题

    如果使用 mkimage 生成内核镜像文件的话,会在内核的前头加上了 64 bytes 的信息头,供建立 tag 之用.bootm 命令会首先判断 bootm xxx 这个指定的地址 xxx 与 -a ...

  5. [转]Angular——提示框

    本文转自:https://blog.csdn.net/whm18322394724/article/details/80177950 版权声明:本文为博主原创文章,未经博主允许不得转载. https: ...

  6. Linux免密码登录设置

    Linux免密码登录设置 假设要登录的机器为192.168.1.100,当前登录的机器为192.168.1.101. 首先在101的机器上生成密钥(如果已经生成可以跳过): $ ssh-keygen ...

  7. java连接OPC之——Windows7 With SP1 网络OPC的DCOM配置

    由于 OPC(OLE for Process Control)建立在 Microsoft 的 COM(COmponent Model)基础 上,并且 OPC 的远程通讯依赖 Microsoft 的 D ...

  8. Sample Means(耶鲁大学教材)

    Sample Means The sample mean from a group of observations is an estimate of the population mean. Giv ...

  9. EditPlus配置

    1.设置语法和字符 2.调用浏览器 3.设置字符编码

  10. XHTML结构化

    XHTML 规则概要 将传统的 HTML 转换为 XHTML 1.0 是快捷且无痛的,只要你遵守一些简单的规则和容易的方针.不管是否使用过 HTML,都不会妨碍你使用 XHTML. 使用恰当的文档类型 ...