zoukankan      html  css  js  c++  java
  • 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
  • 相关阅读:
    [CF888G] Xor-mst (Trie 树,最小生成树)
    [JSOI2010]部落划分 (最小生成树)
    [USACO15FEB]Superbull (最小生成树)
    [APIO2009]抢掠计划 ($Tarjan$,最长路)
    [APIO2015] 雅加达的摩天楼 (分块,最短路)
    [USACO07NOV]牛继电器Cow Relays (最短路,DP)
    P1266 速度限制 (最短路,图论)
    C语言编程题目(1)字符串格式化操作 手机键盘次数统计
    MOCTF RE 暗恋的烦恼
    python 面向对象 私有化浅析
  • 原文地址:https://www.cnblogs.com/longjin2018/p/9854329.html
Copyright © 2011-2022 走看看