「java目录中所有文件」使用java代码列出一个目录下所有的文件

博主:adminadmin 2022-11-26 04:02:06 44

本篇文章给大家谈谈java目录中所有文件,以及使用java代码列出一个目录下所有的文件对应的知识点,希望对各位有所帮助,不要忘了收藏本站喔。

本文目录一览:

java中如何获取目录中的所有文件

public static void list(File path, String[] extArr,HashMap hm) {

if (!path.exists()) {

System.out.println("文件名称不存在!");

} else {

if (path.isFile()) {

for (int i = 0; i extArr.length; i++) {

if (path.getName().toLowerCase().endsWith(extArr[i])) {// 文件格式

hm.put(path.getName(), path);

}

}

} else {

File[] files = path.listFiles();

for (int i = 0; i files.length; i++) {

list(files[i], extArr,hm);

}

}

}

}

java怎么查询指定路径下所有文件夹

Java程序中读取某个目录下的所有文件(下面以D盘下的baidu文件夹为例),代码如下:

import java.io.File;

public class Test1 {

public static void main(String[] args) {

String path="D:/baidu/";

File file=new File(path);

File[] tempList = file.listFiles();

System.out.println("该目录下对象个数:"+tempList.length);

for (int i = 0; i tempList.length; i++) {

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

//读取某个文件夹下的所有文件

System.out.println("文件:"+tempList[i]);

}

if (tempList[i].isDirectory()) {

//读取某个文件夹下的所有文件夹

System.out.println("文件夹:"+tempList[i]);

}

}

}

}

java列出文件夹下的所有文件

/**

 * 获取指定路径下的所有文件列表

 *

 * @param dir 要查找的目录

 * @return

 */

public static ListString getFileList(String dir) {

    ListString listFile = new ArrayList();

    File dirFile = new File(dir);

    //如果不是目录文件,则直接返回

    if (dirFile.isDirectory()) {

        //获得文件夹下的文件列表,然后根据文件类型分别处理

        File[] files = dirFile.listFiles();

        if (null != files  files.length  0) {

            //根据时间排序

            Arrays.sort(files, new ComparatorFile() {

                public int compare(File f1, File f2) {

                    return (int) (f1.lastModified() - f2.lastModified());

                }

                public boolean equals(Object obj) {

                    return true;

                }

            });

            for (File file : files) {

                //如果不是目录,直接添加

                if (!file.isDirectory()) {

                    listFile.add(file.getAbsolutePath());

                } else {

                    //对于目录文件,递归调用

                    listFile.addAll(getFileList(file.getAbsolutePath()));

                }

            }

        }

    }

    return listFile;

}

在java中如何遍历某个路径下的所有文件夹和文件

首先,我们先来遍历一下D盘根目录下所有的子文件:public

static

void

fileList()

{

File

file=new

File("d:/");

File[]

files

=

file.listFiles();

if

(files

!=

null)

{

for

(File

f

:

files)

{

System.out.println(f.getPath());

}

}

}对此,我们肯定不满足,我们需要遍历D盘下所有的文件和文件夹,而不是根目录下的文件夹,这个时候我们需要使用到递归:public

static

void

fileList(File

file)

{

File[]

files

=

file.listFiles();

if

(files

!=

null)

{

for

(File

f

:

files)

{

System.out.println(f.getPath());

fileList(f);

}

}

}然后在主函数中调用:public

static

void

main(String[]

args)

{

File

file=new

File("d:/");

fileList(file);

}结果是不是能令你满意呢?显然,输出的都是全路径,我们可以对我们的递归函数做如下改进:

public

static

void

fileList(File

file,int

node)

{

node++;

File[]

files

=

file.listFiles();

if

(files

!=

null)

{

for

(File

f

:

files)

{

for(int

i=0;inode;i++){

if(i==node-1){

System.out.print("├");

}

else{

System.out.print("

");

}

}

System.out.println(f.getName());

fileList(f,node);

}

}

}然后再次在主函数中调用:public

static

void

main(String[]

args)

{

File

file=new

File("d:/");

fileList(file,0);

}得到的结果是一个类似树状的结构,如果你对此还不满意,可以尝试给JTree上添加节点,可以做到和资源管理器中一样的结构。

java怎么获取一个目录下的所有文件名

获取一个目录下的所有文件和目录方法:

import java.io.File;

public class FileTest {

    public static void main(String[] args) {

        /**

         * 将目标目录封装成 File 对象。

         */

        File dir = new File("/Users/zym/Desktop/Mac应用程序");

        /**

         * 获取目录下的所有文件和文件夹

         */

        String[] names = dir.list();

        for (String name : names) {

            System.out.println(name);

        }

    }

}

通过文件过滤器获取某个目录下的文件,例如所有的 .txt、.doc文件。

过滤器:

import java.io.File;

import java.io.FilenameFilter;

public class FilterByDoc implements FilenameFilter {

    @Override

    public boolean accept(File dir, String name) {

        return name.endsWith(".doc");

    }

}

获取某个目录下的按照过滤器规则的所有文件:

import java.io.File;

public class FileTest {

    public static void main(String[] args) {

        /**

         * 将目标目录封装成 File 对象。

         */

        File dir = new File("/Users/zym/Desktop/Mac应用程序");

        /**

         * 通过过滤器获取目录下的所有的 .doc 文件

         */

        String[] names = dir.list(new FilterByDoc());

        for (String name : names) {

            System.out.println(name);

        }

    }

}

希望能对您有所帮助!

关于java目录中所有文件和使用java代码列出一个目录下所有的文件的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站。

The End

发布于:2022-11-26,除非注明,否则均为首码项目网原创文章,转载请注明出处。