java根据路径读取文件

java根据路径读取文件,第1张

其读取方法为:

import java.io.File  

import java.io.FileNotFoundException  

import java.io.IOException  

import java.util.ArrayList  

  

  

public class readFile {  

    private static ArrayList<String> listname = new ArrayList<String>()  

    public static void main(String[] args)throws Exception{  

        readAllFile("C:/Users/HP/Desktop")  

        System.out.println(listname.size())  

    }  

    public static void readAllFile(String filepath) {  

        File file= new File(filepath)  

        if(!file.isDirectory()){  

            listname.add(file.getName())  

        }else if(file.isDirectory()){  

            System.out.println("文件")  

            String[] filelist=file.list()  

            for(int i = 0i<filelist.lengthi++){  

                File readfile = new File(filepath)  

                if (!readfile.isDirectory()) {  

                    listname.add(readfile.getName())  

                } else if (readfile.isDirectory()) {  

                    readAllFile(filepath + "\\" + filelist[i])//递归  

                }  

            }  

        }  

        for(int i = 0i<listname.size()i++){  

            System.out.println(listname.get(i))  

        }  

    }  

}

java中可以通过递归的方式获取指定路径下的所有文件并将其放入List集合中。

假设指定路径为path,目标集合为fileList,遍历指定路径下的所有文件,如果是目录文件则递归调用,如果是普通文件则放入fileList中。

根据这个思路,得到java源代码如下所示:

//方法getFiles根据指定路径获取所有的文件

public void getFiles(String path){

//目标集合fileList

ArrayList<File>fileList = new ArrayList()

File file = new File(path)

if(file.isDirectory()){

File []files = file.listFiles()

for(File fileIndex:files){

//如果这个文件是目录,则进行递归搜索

if(fileIndex.isDirectory()){

getFiles(fileIndex.getPath())

}else {

//如果文件是普通文件,则将文件句柄放入集合中

fileList.add(fileIndex)

}

}

}

}


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/tougao/8071421.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-13
下一篇 2023-04-13

发表评论

登录后才能评论

评论列表(0条)

保存