时间:2021-05-20
下面通过一段代码介绍下Java输出指定目录、树形结构下的所有文件包括子目录中的文件的方法,并附有效果图。
import java.io.File; public class ReadDirectory { // 文件所在的层数 private int fileLevel; /** * 生成输出格式 * @param name 输出的文件名或目录名 * @param level 输出的文件名或者目录名所在的层次 * @return 输出的字符串 */ public String createPrintStr(String name, int level) { // 输出的前缀 String printStr = ""; // 按层次进行缩进 for (int i = ; i < level; i ++) { printStr = printStr + " "; } printStr = printStr + "- " + name; return printStr; } /** * 输出初始给定的目录 * @param dirPath 给定的目录 */ public void printDir(String dirPath){ // 将给定的目录进行分割 String[] dirNameList = dirPath.split("\\\\"); // 设定文件level的base fileLevel = dirNameList.length; // 按格式输出 for (int i = ; i < dirNameList.length; i ++) { System.out.println(createPrintStr(dirNameList[i], i)); } } /** * 输出给定目录下的文件,包括子目录中的文件 * @param dirPath 给定的目录 */ public void readFile(String dirPath) { // 建立当前目录中文件的File对象 File file = new File(dirPath); // 取得代表目录中所有文件的File对象数组 File[] list = file.listFiles(); // 遍历file数组 for (int i = ; i < list.length; i++) { if (list.isDirectory()) { System.out.println(createPrintStr(list.getName(), fileLevel)); fileLevel ++; // 递归子目录 readFile(list.getPath()); fileLevel --; } else { System.out.println(createPrintStr(list.getName(), fileLevel)); } } } public static void main(String[] args) { ReadDirectory rd = new ReadDirectory(); String dirPath = "D:\\有道词典"; rd.printDir(dirPath); rd.readFile(dirPath); } }输出结果如下:
以上就是本文的全部内容,希望大家喜欢。
声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。
本源码主要内容就是对硬盘里的txt文档文件进行扫描并删除的操作,下面是所有代码:子程序遍历目录,,,输出指定目录下的所有文件,包括子目录.参数参目录,文本型,,
java递归读取目录下的所有文件(包含子目录下的所有文件)大概思路如下:通过file.listFiles()方法获取目录下的所有文件(包含子目录下的所有文件),
最近遇到一个问题,输出指定目录下的所有子目录以及所有文件名简单写了个shell脚本实现functionecho_name(){forfilein`ls$1`do
项目需要,需要写一个函数,能够遍历指定目录中的所有文件,而且这个目录中的子目录也要遍历。输出文件的属性信息,并存储。想想需求,不就是一个ls-al命令吗,实现获
小编今天没事写了目录想关的函数包括遍历该文件夹下的文件,目录子目录读取当前文件下目录和文件删除当前文件夹下的目录子目录以及文件以上三个函数目前还不支持中文文件中