• Algs4-1.3.43文件列表


     1.3.43文件列表。文件夹就是一列文件和文件夹的列表。编写一个程序,从命令行接受一个文件夹名作为参数,打印出访文件夹下的所有文件并用递归的方式在所有子文件夹的名下(缩进)列出其下的所有文件。提示:使用队列,并参考java.io.File。
    答:
    图片
    import java.io.File;
    public class test
    {
        private class MyFile
        {
            String name;
            int level;
        }
        public static void main(String[] args)
        {
           String dirName=args[0];
           File f=new File(dirName);
           Queue<MyFile> q=new Queue<MyFile>();
           int level=0;
           test mytest=new test();
           mytest.ShowAllDirAndFile(f,q,level);
            for(MyFile i:q)
                StdOut.printf("%"+3*i.level+"s%s ","",i.name);
         }//end main
       
        public  void ShowAllDirAndFile(File f,Queue<MyFile> q,int level)
        {
            if(f==null) return;
             level++;
            if(f.isDirectory())
            {
                MyFile myfile=new MyFile();
                myfile.name=f.getName().toString();
                myfile.level=level;
                q.enqueue(myfile);
                File[] files=f.listFiles();
               if(files.length>0)
                for(File file:files)
                   ShowAllDirAndFile(file,q,level);
            }
            else
            {
                MyFile myfile=new MyFile();
                myfile.name=f.getName().toString();
                myfile.level=level;
                q.enqueue(myfile);
            }
        }
      }//end class
  • 相关阅读:
    Spring基础——小的知识点
    Spring总结—— IOC 和 Bean 的总结
    UML 类图
    Spring基础—— 泛型依赖注入
    Spring重点—— IOC 容器中 Bean 的生命周期
    Spring基础—— SpEL
    《大话设计模式》学习笔记13:适配器模式
    《大话设计模式》学习笔记12:状态模式
    《大话设计模式》学习笔记11:抽象工厂模式
    《大话设计模式》学习笔记10:观察者模式
  • 原文地址:https://www.cnblogs.com/longjin2018/p/9854329.html
Copyright © 2020-2023  润新知