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);
        }
    }

}

希望能对您有所帮助!

温馨提示:答案为网友推荐,仅供参考
第1个回答  2017-04-26
File file = new File("E:\\program\\work");
  File[] cFile = file.listFiles();
  for (int i = 0; i < cFile.length; i++) {
   String name = cFile[i].getName();
   System.out.println(name);
  }

相似回答