亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

有沒有辦法在java的幫助下列出特定文件夾中的所有文檔,包括來自所有子文件夾中的文件?

有沒有辦法在java的幫助下列出特定文件夾中的所有文檔,包括來自所有子文件夾中的文件?

千巷貓影 2022-09-01 17:40:17
我想獲取文件夾中存在的所有文檔的列表。包括文件夾的子文件夾中存在的那些。目前,我只能編寫代碼,循環訪問文件夾中存在的文檔,而不能循環訪問其子文件夾。     File dir = new File("C:\\Users\\...\\Forms");     File[] list = dir.listFiles();     for(int i=0; i<list.length;i++)     {     ...     }是否有Java代碼可以從文件夾中獲取所有文檔,包括其子文件夾?
查看完整描述

2 回答

?
慕的地10843

TA貢獻1785條經驗 獲得超8個贊

You Can use the below code!!


package model;



import java.io.File;

import java.util.ArrayList;

import java.util.List;


public class iterateThroghFolder {

    public iterateThroghFolder() {

        super();

    }


    static List<File> file = new ArrayList<File>();

    static List<File> list = new ArrayList<File>();;


    public static void main(String[] args) {

        File file = new File("C:/Users/c_umashe/Desktop/Test"); //Required Path


        boolean b = file.isDirectory();

        if (b) {

            iterateOver(file);

        } else{

             list.add(file); 

        }

        System.out.println(list.size());


    }



    public static void iterateOver(File file) {

        File[] innerFiles = file.listFiles();

        int size = innerFiles.length;

        for (int i = 0; i < size; i++) {           

            if (innerFiles[i].isFile()) {            

                    list.add(innerFiles[i]);           

            } else { //If it is a directory

                iterateOver(innerFiles[i]);

            }

        }

    }

}


查看完整回答
反對 回復 2022-09-01
?
天涯盡頭無女友

TA貢獻1831條經驗 獲得超9個贊

 public void listf(String directoryName, List<File> files) {

        File directory = new File(directoryName);


        // Get all files from a directory.

        File[] fList = directory.listFiles();

        if(fList != null)

            for (File file : fList) {      

                if (file.isFile()) {

                    files.add(file);

                } else if (file.isDirectory()) {

                    listf(file.getAbsolutePath(), files);

                }

            }

        }

    }

您可以將上述方法調用為


        ArrayList<File> f = new ArrayList<File>(); 

        listf("C://Users/xyz", f);

        System.out.print(f.size()); // This is the list of files you want.


查看完整回答
反對 回復 2022-09-01
  • 2 回答
  • 0 關注
  • 78 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號