<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    隨筆-19  評(píng)論-2  文章-1  trackbacks-0


    import java.io.*;

    public class FileRead{
     private static double totalFile = 0;
     private static double totalDirectory = 0;

     public String replace(String value){
         StringBuffer replace = new StringBuffer(value);
         int i = 0;
         int last = replace.lastIndexOf("──");
         i = replace.indexOf("──");
         while((i != last)&&(i != -1)){
             replace.replace(i,i+"──".length(),"   ");
             i = replace.indexOf("──");
             last = replace.lastIndexOf("──");
         }
         return replace.toString();
     }

     public void searchFile(File f,String value,boolean b)throws IOException{
         StringBuffer string = new StringBuffer(value);
         string.append("──");
         boolean bool = b;
      String path = f.getAbsolutePath();
      File currentFile = new File(path); //取得當(dāng)前路徑的文件
      File[] file = currentFile.listFiles();

      for(int i=0;i<file.length;i++){      
          StringBuffer s = null;
          String lastDirectory = null; 
         
          /*
           * 判斷文件夾是否為該目錄下的最后一個(gè)文件夾,如果是的話,則取消打印"│"符號(hào)
           */
          for(int k=0;k<file.length;k++){
           if(file[k].isDirectory())
            lastDirectory = new String(file[k].getName()); 
          }
          if(file[i].getName().equals(lastDirectory)){
           if(string.indexOf("│") != -1){
               string.delete(string.lastIndexOf("│"),string.lastIndexOf("│")+1);
           }
          }
           
          /*
           * 格式化打印,將符號(hào)最后的"──"變?yōu)?├──"(當(dāng)最后的符號(hào)不為"│──"時(shí))
           */     
          if(!((string.lastIndexOf("──")-1) == string.lastIndexOf("│──"))){
              s = new StringBuffer(string.substring(0,string.lastIndexOf("──")));
           s.append("├──");         
          }else{
           if(string.indexOf("│──")!=-1){
            s = new StringBuffer(string.substring(0,string.lastIndexOf("│──")));
            s.append("├──");
           }
          }
         
          if(file[i].getName().equals(file[file.length-1].getName()))
           if(s != null)
            if(s.lastIndexOf("├") != -1)
             s.replace(s.lastIndexOf("├"),s.lastIndexOf("├")+1,"└");
         
          /*
           * 如果s不為空,則將s傳入方法replace中進(jìn)行格式化
           */
          if(s != null)           
           System.out.println(replace(s.toString()) + file[i].getName());
               
       if(file[i].isDirectory()){   
           totalDirectory  += 1;
            
           /*
            * 如果該文件夾的子目錄下還有兩個(gè)以上的文件和文件夾,則打印一個(gè)"│"符號(hào),并標(biāo)記bool為true
            */
               String pathstring = file[i].getAbsolutePath();
         File current = new File(pathstring); //取得當(dāng)前路徑的文件
         File[] fp = current.listFiles();
         if(fp.length >1){
             bool = true;                  
         }
        
           if(bool)
            string.append("│");
          
           searchFile(file[i],string.toString(),bool);
          
           /*
            * 如果bool已經(jīng)被標(biāo)記過(guò),則將上一次的"│"符號(hào)刪除
            */
           if(bool)
            if(string.indexOf("│") != -1)
                string.delete(string.lastIndexOf("│"),string.length());
           bool = false; 
       }
       totalFile += 1; 
      }
     } 
     public static void main(String args[])throws IOException{
      String path = null;
      if(args.length<1)
       path =".";
      else
       path = args[0];
      FileRead read = new FileRead();
      File file = new File(path);
      
      if(!file.exists()){
       System.err.print("the path is error");
       System.exit(1);
      } 
      read.searchFile(file,"│",false);
      System.out.println("the file is :" + (totalFile-totalDirectory));
      System.out.println("thd directory is : " + totalDirectory);
     }
    }

    該程序存在一個(gè)問(wèn)題,也就是當(dāng)jdk中的File類(lèi)無(wú)法判斷目錄下的一些目錄是文件夾或則是文件時(shí)?

    posted on 2005-08-19 20:20 sky 閱讀(577) 評(píng)論(0)  編輯  收藏

    只有注冊(cè)用戶登錄后才能發(fā)表評(píng)論。


    網(wǎng)站導(dǎo)航:
     
    主站蜘蛛池模板: 日韩精品无码免费专区午夜| 亚洲深深色噜噜狠狠网站| 亚洲男人天堂2020| 国产亚洲自拍一区| 亚洲性一级理论片在线观看| 国产亚洲精品欧洲在线观看| 中文字幕无码免费久久9一区9| 亚洲视频免费播放| 国产免费变态视频网址网站| 国产亚洲综合成人91精品| 性xxxx黑人与亚洲| 久久精品免费一区二区三区| 国产免费变态视频网址网站| 日韩大片在线永久免费观看网站| 黄色永久免费网站| 亚洲国产一二三精品无码| 精品免费视在线观看| 久久亚洲熟女cc98cm| 一级毛片大全免费播放下载 | 亚洲人成精品久久久久| 亚洲码欧美码一区二区三区| 国产做国产爱免费视频| 全部免费国产潢色一级| 一级中文字幕免费乱码专区 | 亚洲成a人片毛片在线| 无码专区永久免费AV网站 | 亚洲六月丁香六月婷婷蜜芽| kk4kk免费视频毛片| 色www永久免费视频| 亚洲欧洲久久精品| 日韩成人免费aa在线看| 亚洲综合无码一区二区痴汉| 一个人免费观看视频www| 在线观看亚洲精品专区| 亚洲大尺度无码无码专区| 一级做a爱过程免费视频高清| 久久精品国产亚洲夜色AV网站| 黄桃AV无码免费一区二区三区| 亚洲视频欧洲视频| 国产免费牲交视频| 91大神在线免费观看|