欧美一区二区三区老妇人-欧美做爰猛烈大尺度电-99久久夜色精品国产亚洲a-亚洲福利视频一区二区

java對文件夾目錄進行深度遍歷實例代碼-創(chuàng)新互聯(lián)

創(chuàng)新互聯(lián)www.cdcxhl.cn八線動態(tài)BGP香港云服務器提供商,新人活動買多久送多久,劃算不套路!

創(chuàng)新互聯(lián)公司從2013年成立,先為利津等服務建站,利津等地企業(yè),進行企業(yè)商務咨詢服務。為利津企業(yè)網(wǎng)站制作PC+手機+微官網(wǎng)三網(wǎng)同步一站式服務解決您的所有建站問題。

java 對文件夾目錄進行深度遍歷實例代碼

1、題目

對指定目錄進行所有內容的列出(包含子目錄中的內容),也可以理解為對目錄進行深度遍歷。

2、解題思想

從電腦中獲取文件目錄,建立函數(shù)對其遍歷,在這個函數(shù)中需要對該目錄中的每個文件進行判斷,如果文件還是目錄,則調用函數(shù)本身繼續(xù)對其進行遍歷,如果文件不是目錄,則直接輸出文件名。為了加強顯示的效果,我們還可以建立一個getSpace函數(shù),對其進行縮進。

需要注意的是,不要直接遍歷C盤的內容,其目錄層次太深,含有太多的系統(tǒng)級文件,容易返回為空,導致空指針異常的發(fā)生,也不要直接遍歷D盤,因為只要其含有隱藏的系統(tǒng)卷標目錄,也會造成空指針異常的發(fā)生。

3、Java代碼

import java.io.File;
public class DepthTraversal {
  public static void main(String[] args) {
    File dir = new File("d:\\BaiduYunDownload");
    listAll(dir, 0);
  }

  public static void listAll(File dir, int level) {
    System.out.println(getSpace(level) + dir.getName());
    level++; //每調用一次,level加1
    File[] files = dir.listFiles(); //獲取指定目錄下當前的所有文件夾或者文件對象
    for (int x = 0; x < files.length; x++) { //循環(huán)遍歷
      if (files[x].isDirectory()) { //如果是目錄,繼續(xù)調用listAll函數(shù)
        listAll(files[x], level);
      } else { //否則,直接輸出文件名
        System.out.println(getSpace(level) + files[x].getName());
      }
    }
  }

  private static String getSpace(int level) { //輸出空格,加強顯示效果
    StringBuilder sb = new StringBuilder();
    sb.append("|--");
    for (int x = 0; x < level; x++) {
      sb.insert(0, "| ");
    }
    return sb.toString();
  }
}

網(wǎng)站標題:java對文件夾目錄進行深度遍歷實例代碼-創(chuàng)新互聯(lián)
網(wǎng)站URL:http://chinadenli.net/article40/hgjho.html

成都網(wǎng)站建設公司_創(chuàng)新互聯(lián),為您提供關鍵詞優(yōu)化網(wǎng)站營銷商城網(wǎng)站軟件開發(fā)營銷型網(wǎng)站建設虛擬主機

廣告

聲明:本網(wǎng)站發(fā)布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經(jīng)允許不得轉載,或轉載時需注明來源: 創(chuàng)新互聯(lián)

成都網(wǎng)站建設