91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

java如何實現從鍵盤接收文件夾路徑并按層級打印

發布時間:2020-06-21 21:08:26 來源:億速云 閱讀:386 作者:鴿子 欄目:編程語言

一、實現效果

需求:從鍵盤接收一個文件夾路徑,把文件夾中的所有文件以及文件夾的名字按層級打印。

例如:把文件夾中的所有文件以及文件夾的名字按層級打印。

二、實現邏輯

獲取所有文件和文件夾,返回File數組,遍歷數組,無論是文件還是文件夾都需要直接打印,如果是文件夾,遞歸調用。

三、實現代碼

aaa是文件夾,里面有bbb.txt、ccc.txt、ddd.txt這些文件,有eee這樣的文件夾,eee中有fff.txt和ggg.txt,打印出層級來。

例如:

java如何實現從鍵盤接收文件夾路徑并按層級打印

代碼如下:

public class Test4 {
    public static void main(String[] args) {
 
        File dir = getDir();                //獲取文件夾路徑
 
        printLev(dir,0);
 
    }
 
    /*
     * 從鍵盤接收一個文件夾路徑
     * 1,返回值類型File
     * 2,參數列表無
     */
 
    public static File getDir() {
 
        //1,創建鍵盤錄入對象
 
        Scanner sc = new Scanner(System.in);
 
        System.out.println("請輸入一個文件夾路徑:");
 
        //2,定義一個無限循環
 
        while(true) {
 
            //3,將鍵盤錄入的結果存儲并封裝成File對象
 
            String line = sc.nextLine();
 
            File dir = new File(line);
 
            //4,對File對象判斷
 
            if(!dir.exists()) {
 
                System.out.println("您錄入的文件夾路徑不存在,請輸入一個文件夾路徑:");
 
            }else if(dir.isFile()) {
 
                System.out.println("您錄入的是文件路徑,請輸入一個文件夾路徑:");
 
            }else {
 
                //5,將文件夾路徑對象返回
 
                return dir;
 
            }
 
        }
    }

    public static void printLev(File dir,int lev) {
 
        //1,把文件夾中的所有文件以及文件夾的名字按層級打印
 
        File[] subFiles = dir.listFiles();
 
        //2,遍歷數組
 
        for (File subFile : subFiles) {
 
            for(int i = 0; i <= lev; i++) {
 
                System.out.print("\t");
 
            }
 
            //3,無論是文件還是文件夾,都需要直接打印
 
            System.out.println(subFile);
 
            //4,如果是文件夾,遞歸調用
 
            if(subFile.isDirectory()) {
 
                //printLev(subFile,lev + 1);
 
                printLev(subFile,++lev);
 
            }
 
        }
 
    }
 
}

以上就是java實現從鍵盤接收文件路徑,層級打印文件或文件夾名字的詳細內容,更多請關注億速云其它相關文章!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

阿城市| 岗巴县| 金寨县| 昌吉市| 札达县| 台前县| 翁牛特旗| 佛学| 和平县| 安泽县| 嘉禾县| 楚雄市| 东港市| 浮梁县| 临清市| 神农架林区| 察隅县| 蓝田县| 马边| 藁城市| 阿克| 苍南县| 保定市| 西吉县| 新竹市| 榕江县| 兴海县| 聂拉木县| 射阳县| 瓦房店市| 栾城县| 日土县| 唐河县| 新巴尔虎左旗| 平塘县| 永州市| 大宁县| 星子县| 维西| 砀山县| 天全县|