【小程序】使用java递归实现文件的格式化输出和删除

/*

* 递归:

* 定义:函数自己调用自己

* 前提:函数总必须存在结束递归的条件,否则递归会称为死循环。

*

*

*/

package com.michael.lin;

import java.io.File;

public class Demo07 {

public static void main(String[] args){

listFiles(new File("G:\\2015java基础班33期"));

listFiles2(new File("G:\\2015java基础班33期"), "|");

}

//1.使用递归调用文件的中的所有文件(包括子孙文件)

public static void listFiles(File dir){

//1.列出当前目录所有的文件夹

File[] files = dir.listFiles();

//2遍历所有的文件(夹)

for(File file : files){

if(file.isFile()){

System.out.println("---" + file.getName());

}else if(file.isDirectory()){

System.out.println("-" + file.getName()+":");

listFiles(file);

}

}

}

//2.使用递归函数列出文件中的所有子孙目录,不同级别的目录使用定义格式分级

public static void listFiles2(File dir, String space){

//1.获得氮气目录的所有文件对象

File[] files = dir.listFiles();

//2.遍历所有的饿文件对象

for(File file : files){

if(file.isFile()){

System.out.println(space+file.getName());

}else if(file.isDirectory()){

System.out.println(space+file.getName());

listFiles2(file, "|--"+space);

}

}

}

//3.使用递归删除非空的文件夹

public static void deleteDeir(File dir){

File[] files = dir.listFiles();

for(File file : files){

if(file.isFile()){

file.delete();

}else if(file.isDirectory()){

deleteDeir(file);

}

}

dir.delete();

}

}

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 1 IONo18 1.1IO框架 【 IO:Input Output 在程序运行的过程中,可能需要对一些设备进...
    征程_Journey阅读 979评论 0 1
  • 1.1 文件类操作 1.1.1 递归文件删除 【 public static void main(String[...
    征程_Journey阅读 725评论 0 0
  • 一、 1、请用Java写一个冒泡排序方法 【参考答案】 public static void Bubble(int...
    独云阅读 1,421评论 0 6
  • 1. Java基础部分 基础部分的顺序:基本语法,类相关的语法,内部类的语法,继承相关的语法,异常的语法,线程的语...
    子非鱼_t_阅读 31,779评论 18 399
  • 我是一粒石头 洁白无暇 等着你为我染色 染出我那五彩斑斓的梦 我是一粒石头 静躺溪谷 等着你为我开路 奔向我那梦中...
    知媒姐阅读 272评论 0 1