JAVA文件扫描(递归)

import java.io.File;

public class Scan {
    public static void main(String[] args) {
        String fileName = "D:\\Program Files\\腾讯游戏\\英雄联盟" + File.separator;
        File f = new File(fileName);
        scan(f);
    }

    public static void scan(File f) {
        if (f != null) {
            if (f.isDirectory()) {
                File[] fileArray = f.listFiles();
                if (fileArray != null) {
                    for (int i = 0; i < fileArray.length; i++) {
                        // 递归调用
                        scan(fileArray[i]);
                    }
                }
            } else {
                System.out.println(f);
            }
        }
    }
}

扫描了“D:\\Program Files\\腾讯游戏\\英雄联盟”中的所有文件

而下面这个可以进行文件的扫描和读取

import java.io.BufferedReader;
import java.io.File;
import java.io.FileNotFoundException;
import java.io.FileReader;

public class TextReader {
    public static void main(String[] args) {
        String fileName = "E:\\JavaWorkSpace\\Workspaces\\eclipse" + File.separator;
        File f = new File(fileName);
        scan(f);
    }

    public static void scan(File f) {
        if (f != null) {
            if (f.isDirectory()) {
                File[] fileArray = f.listFiles();
                if (fileArray != null) {
                    for (int i = 0; i < fileArray.length; i++) {
                        // 递归调用
                        scan(fileArray[i]);
                    }
                }
            } else {

                if ((f.getName().substring(f.getName().lastIndexOf(".") + 1, f
                        .getName().length())).equals("java")) {
                    FileReader reader;
                    try {
                        Thread.sleep(3000);
                        reader = new FileReader(f);
                        BufferedReader Bufferedreader = new BufferedReader(
                                reader);
                        String content = "";
                        while ((content = Bufferedreader.readLine()) != null) {
                            System.out.println(content);
                        }
                    } catch (Exception e) {
                        // TODO Auto-generated catch block
                    }

                }
            }
        }
    }
}

扫描了”E:\\JavaWorkSpace\\Workspaces\\eclipse“中所有的.java文件,并进行了文件的读取和输出

				
时间: 2024-10-06 08:23:06

JAVA文件扫描(递归)的相关文章

Java文件操作---递归遍历文件目录

在读取文件降序输出单词及其个数的基础上,将txt文件存入文件夹中,开始递归遍历文件目录,之后输出txt文件中的单词及其个数,仍然是降序排列. 代码如下 1 import java.io.BufferedReader; 2 import java.io.File; 3 import java.io.FileReader; 4 import java.util.Map; 5 import java.util.Map.Entry; 6 import java.util.ArrayList; 7 imp

Java扫描指定文件路径下的文件并且递归扫描其子目录下的所有文件

本文主要实现了扫描指定文件路径下的文件,递归扫描其子目录下的所有文件信息,示例文件为: 要求将后缀为.dat的文件夹信息也写入到数据库中,然后将.chk文件解析,将文件中对应的内容读出来写入到数据库,对应类为ChkFileParseFactroy,本文文件发现代码为: 1 package com.src.service.impl; 2 3 import java.io.File; 4 import java.net.InetAddress; 5 import java.net.NetworkIn

java扫描文件夹下面的所有文件(递归与非递归实现)

java中扫描指定文件夹下面的所有文件扫描一个文件夹下面的所有文件,因为文件夹的层数没有限制可能多达几十层几百层,通常会采用两种方式来遍历指定文件夹下面的所有文件.递归方式非递归方式(采用队列或者栈实现)下面我就给出两种方式的实现代码,包括了递归与非递归实现,code如下所示. package q.test.filescanner; import java.io.File;import java.util.ArrayList;import java.util.LinkedList; import

java中获取所有文件--(递归调用)

import java.io.File;import java.io.*; //获取一个文件夹中的所有的文件.  /*    打印要求:      -- a.txt   -- IO.doc      -- ~$IO.doc   -- 代码   -- --.metadata   -- --Day18   --视频   -- --01 线程通信.wmv   -- --02 守护线程和join方法.wmv   -- --03 Filed的创建.wmv   -- --04 File的常用方法.wmv  

Java 文件拼接器

1. 功能描述: 实现指定目录下相同类型的文件拼接成一个文件, 拼接效果如代码所示. 涉及内容: 反射, io, 递归 1.1 xml 的拼接: <!-- \pom.xml --> <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http:

IO流 创建java文件列表

package com.yyq; /* * 练习: * 将一个指定目录下的java文件的绝对路径,存储到一个文本文件中 * * 思路 1.对指定的目录进行递归 * 2.获取递归过程中所有的Java文件的路径 * 3.将这些路径存储到集合中 * 4.将集合中的数据存储到一个文件中 * // 存储到硬盘中 ,往硬盘整,数据的持久化,写到文件中,没用try catch */ import java.io.*; import java.util.*; public class JavaFileList

Java 文件变化加载监控,实时监控文件加载之Commons-io

Java 文件监控,实时监控文件加载 ,Commons-io中已有此功能的实现,如下代码所示: package wy.util.filemonitor; import java.io.File; import org.apache.commons.io.monitor.FileAlterationListenerAdaptor; import org.apache.commons.io.monitor.FileAlterationObserver; import org.apache.log4j

Hibernate中持久化注解的java文件在applicationContext.xml中的配置

之前用Hibernate操作数据库,都是写下.hbm.xml配置文件的.这段时间发现注解要比.hbm.xml方便很多时,决定用注解. 之前用.hbm.xml时,在applicationContext.xml里配置是: <bean id="sessionFactory" class="org.springframework.orm.hibernate4.LocalSessionFactoryBean"> <property name="da

JAVA之File类-将指定目录下的所有java文件的绝对路径存储到文本文件中

/* * 将指定目录下的所有java文件的绝对路径存储到文本文件中 * 建立一个java列表. * 思路: * 1.对指定目录进行递归 * 2.获取递归过程所有的java文件的路径 * 3.将这些路径存储在集合中 * 4.将集合中的内容写到文本文件 * 注:3,4步骤也可以合并成一个步骤 */ package ioTest.io3; import java.io.BufferedWriter; import java.io.File; import java.io.FileWriter; imp