【转】java 文件 读取目录下的所有文件(包括子目录)

转自:http://www.cnblogs.com/pricks/archive/2009/11/11/1601044.html

import java.io.File;
import java.io.IOException;
import java.util.ArrayList;
import java.util.Iterator;
import java.util.List;

public class test {

    public static void main(String[] args) {
        //目录
        File dataDir = new File("E:/资源库资源/20091111");
        //存放目录及其子目录下的所有文件对象
        List<File> myfile = new ArrayList<File>();
        //开始遍历
        listDirectory(dataDir, myfile);

        System.out.println("目录下包含 " + myfile.size() + "个文件:");
        for(File file : myfile){
            System.out.println(file.getAbsolutePath());
        }
    }
    /** *//**
     * 遍历目录及其子目录下的所有文件并保存
     * @param path 目录全路径
     * @param myfile 列表:保存文件对象
     */
    public static void listDirectory(File path, List<File> myfile){
        if (!path.exists()){
            System.out.println("文件名称不存在!");
        }
        else
        {
            if (path.isFile()){
                myfile.add(path);
            } else{
                File[] files = path.listFiles();
                for (int i = 0; i < files.length; i++  ){
                    listDirectory(files[i], myfile);
                }
            }
        }
    }
}
时间: 2024-08-05 07:04:02

【转】java 文件 读取目录下的所有文件(包括子目录)的相关文章

读取目录下的所有文件

采用递归的方式,逐层读取目录下的文件 public void getFile(String path, List<String> fileList) {        File file = new File(path);        if (file.isDirectory()) {            File[] files = file.listFiles();            if (files != null) {                for (File sub

[Java 8] 列举目录下的所有文件和监视文件变化

列举目录中的所有文件 首先给出代码: Files.list(Paths.get(".")).forEach(System.out::println); Files.list方法得到的是一个Stream类型的对象,它代表了目标路径下所有的文件.如果只想获取目标路径下的所有目录文件: Files.list(Paths.get(".")) .filter(Files::isDirectory) .forEach(System.out::println); 在以前的Java

php读取目录下的所有文件

<?php $path = './use'; $result = scanFile($path); function scanFile($path) { global $result; $files = scandir($path); foreach ($files as $file) { if ($file != '.' && $file != '..') { if (is_dir($path . '/' . $file)) { scanFile($path . '/' . $fi

Java API 读取HDFS目录下的所有文件

/** * 获取1号店生鲜食品的分类id字符串 * @param filePath * @return */ public String getYHDSXCategoryIdStr(String filePath) { final String DELIMITER = new String(new byte[]{1}); final String INNER_DELIMITER = ","; // 遍历目录下的所有文件 BufferedReader br = null; try { F

Java web 项目读取src或者tomcat下class目录下的xml文件或者properties文件

//生成一个文件对象: File file = new File(getClass().getClassLoader().getResource("test.xml").getPath()); //直接得到一个输入流: InputStream in = getClass().getClassLoader().getResourceAsStream("test.xml"); //在当前线程获取--这个方法不大稳定 //String path = Thread.curr

Java读取指定目录下的所有文件(子目录里的文件也可递归得到)

1 import java.io.File; 2 3 public class ReadFile { 4 5 public static void main(String[] args) { 6 7 // path是指定目录的绝对路径 8 String path = "/Users/tonychan/Workspaces/MyEclipse 2017 CI/Zhangjiajie/WebRoot/pics"; 9 getFile(path); 10 11 } 12 13 // 给定目录

如何通过简单的java代码读取本地磁盘目录下的所有文件或者文件夹?

public class FileTest {  public static void main(String[] args) {   //注意:File导 import java.io.File 包   File file = new File("K:\\");   File[] listFiles = file.listFiles();   for (File file2 : listFiles) {    /**打印目录下所有文件以及文件夹 只需要输出file2就行了**/   

Android开发系列(十七):读取assets目录下的数据库文件

在做Android应用的时候,不可避免要用到数据库.但是当我们把应用的apk部署到真机上的时候,已经创建好的数据库及其里边的数据是不能随着apk一起安装到真机上的. (PS:这篇博客解决了我前面博客中写的一个小游戏的一个问题,另外也可以读取Raw目录下的数据库文件) 这就造成了一个问题,这个问题其实很好解决,解决方法如下: 我们首先把有数据的数据库文件放在assets资源目录下边,然后在apk应用启动的时候,把assets目录下的数据库文件的数据写入到真机的内存中去. 下边开始我们的代码编写:

JAVA之File类 获取一个目录下的所有文件夹和文件,包括子文件夹和子文件

package ioTest.io3; import java.io.File; /* * 获取一个目录下的所有文件夹和文件,包括子文件夹和子文件 . * 并将文件夹和文件名称打印在控制台上面.并且要显示文件目录的层级 * 注:运用了递归的算法. */ public class FileDemo3 { public static void main(String[] args) { File dir=new File("F:\\黑马学习日程\\"); //File dir=new Fi