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

总结

以上所述是小编给大家介绍的JAVA文件扫描(递归)的实例代码 ,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对脚本之家网站的支持!
如果你觉得本文对你有帮助,欢迎转载,烦请注明出处,谢谢!

你可能感兴趣的:(JAVA文件扫描(递归)的实例代码)