IO- /*
- 需求:列出指定目录下文件或者文件夹,包含子目录中的内容
- 即,列出指定目录下的所有内容
- 分析: 1、创建抽象路径名File指向指定地址
- 2、创建方法,接收File对像,递归显示文件和文件夹,
- */
- import java.io.*;
- class ListDirDemo
- {
- public static void main(String[] args)
- {
- File f = new File("C:\\Users\\hyning\\Desktop\\java基础笔记\\");
- // File f = new File("E:\\");
- showDir(f,0);
- // File[] f = File.listRoots();
- // for(File fl:f)
- // showDir(fl);
-
- System.out.println("Hello World!");
- }
- public static void sop(Object obj){
- System.out.println(obj);
- }
-
- public static void showDir(File f,int level){ //显示目录和文件
- File[] file = f.listFiles();
- sop(space(level)+"Dir:"+f+"...."+level);//打印目录
- level++;//目录层级增加
- for(int i=0;i<file.length;i++){
- // if(file[i].isDirectory()&&!(file[i].isHidden())){
- if(file[i].isDirectory()){
- showDir(file[i],level);
- }
- else if(file[i].isFile())
- sop(space(level)+"File:"+file[i].getAbsolutePath()+" "+level);//打印文件名
- }
- }
- public static String space(int level){ //添加层级目录的空格
- StringBuilder sp = new StringBuilder();
-
- // for(int i=0; i<level; i++)
- // sp.append(" ");
- // sp.append("|--");
-
- sp.append("|--");
- for(int i=0; i<level; i++)
- sp.insert(0," ");
- return sp.toString();
- }
- }
复制代码
|
|