给定任意一个目录,以树形方式展现出该目录中的子目录和文件
来源:互联网 发布:查看80端口占用情况 编辑:程序博客网 时间:2024/05/17 22:50
练习:给定任意一个目录,以树形方式展现出该目录中的子目录和文件。另外,在展现目录的时候将目录排在上面,文件排在下面。每一层要加上缩进。
package com.io2;import java.io.File;import java.util.ArrayList;public class ListAllTest{ private static int time;//用户判断目录或者文件所处的层次。 //递归的方法 public static void deepList(File file)//file表示用户传递进来的想要显示的目录结构被人 { //递归肯定需要一个出口:如果遍历到是文件或者空文件夹,就是出口 if(file.isFile() || file.listFiles().length ==0) { return; } else { //得到文件和文件夹 File[] files=file.listFiles(); files=sort(files);//此时已经排完序 for(File f:files) { StringBuffer output=new StringBuffer(); if(f.isFile()) { output.append(getTabs(time)); output.append(f.getName()); } else { output.append(getTabs(time)); output.append(f.getName()); output.append("\\"); } System.out.println(output); if(f.isDirectory()){ time++; deepList(f); time--; } } } } //整理文件数组,使得文件夹排在文件之前. //接收一个File[] 数组,返回一个File[]数组 private static File[] sort(File[] files) { //使用集合排序 ArrayList<File> sorted=new ArrayList<File>(); //寻找到所有目录 for(File f: files) { if(f.isDirectory()) { sorted.add(f); } } //寻找到所有的文件 for(File f: files) { if(f.isFile()) { sorted.add(f); } } //将集合元素转换成数组元素 return sorted.toArray(new File[files.length]); } //判断需要加多少tab的方法 private static String getTabs(int time) { StringBuffer buffer=new StringBuffer(); for(int i=0;i<time;i++) { buffer.append("\t"); } return buffer.toString(); } public static void main(String[] args) { File file=new File("D:/Program Files (x86)"); deepList(file);//调用递归方法 }}
0 0
- 给定任意一个目录,以树形方式展现出该目录中的子目录和文件
- Java作业:给定任意一个目录 ,以树形方式展示出该目录中的所有子目录和文件。另外,在展现的时候将目录排在上面,文件排在下面。每一层要加上缩进
- 通过java递归思想实现以树形方式展现出该目录中的所有子目录和文件
- 遍历一个指定的目录(包含子目录和文件),用Jdom把该目录的树形结构写入xml文件中
- 给定一个目录,递归的列出下面所有的子目录和文件
- 删除目录下所有子目录和文件
- 使用递归打印该目录下的所有子目录和文件
- 删除目录以及子目录以下所有目录和文件
- python递归目录子目录列出目录和文件
- Tree: 列出树形目录和文件
- 递归输出给定目录下的所有目录和文件
- java遍历给定目录,树形结构输出所有文件,包括子目录中的文件
- java遍历给定目录,树形结构输出所有文件,包括子目录中的文件
- Linux下使用Shell脚本删除一个目录下的所有子目录和文件
- 列出某个目录下的所有子目录和文件
- 递归列出某目录的所有子目录和文件
- MFC递归遍历目录下所有子目录和文件
- python遍历目录中所有子目录和文件
- Servlet 表单提交参数
- 第八周拓展实践8 污损的单据
- Dagger2
- Java类加载器体系探究
- hdu-1045 Fire Net(DFS)
- 给定任意一个目录,以树形方式展现出该目录中的子目录和文件
- 输入一个矩阵,输入初始坐标和目的坐标,输出最短路径(之一)及路径的各个坐标
- 随机采块边界的界定
- 获取前一天时间
- oracle 单引号中含有字符串
- 跟老杨学java系列(二) PNP训练法介绍
- hashMap 的遍历:
- jsp基本语法
- byte、short、char和int的转换