相关疑难解决方法(0)

使用Java递归列出目录中的所有文件

我有这个函数以递归方式打印目录中的所有文件的名称.问题是我的代码非常慢,因为它必须在每次迭代时访问远程网络设备.

我的计划是先递归加载目录中的所有文件,然后再使用正则表达式遍历所有文件,过滤掉我不想要的所有文件.有人有更好的建议吗?

public static printFnames(String sDir){
  File[] faFiles = new File(sDir).listFiles();
  for(File file: faFiles){
    if(file.getName().matches("^(.*?)")){
      System.out.println(file.getAbsolutePath());
    }
    if(file.isDirectory()){
      printFnames(file.getAbsolutePath());
    }
  }
}
Run Code Online (Sandbox Code Playgroud)

这只是稍后的一个测试,我不打算使用这样的代码,而是我要将每个匹配高级正则表达式的文件的路径和修改日期添加到数组中.

java file-io

80
推荐指数
7
解决办法
16万
查看次数

如何获取文件夹的内容并放入ArrayList

我想用

File f = new File("C:\\");
Run Code Online (Sandbox Code Playgroud)

使用该文件夹的内容创建一个ArrayList.

我对缓冲读者不是很好,所以请告诉我这是否更好.

这是我到目前为止的代码:

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


public class buffered_read {
public static void main(String[] args) {
    File f = new File("C:\\");
    int x = 0;
    boolean b = true;
    File list[];
    while(b = true){

    }
}
}
Run Code Online (Sandbox Code Playgroud)

谢谢,obiedog

java file

33
推荐指数
2
解决办法
8万
查看次数

标签 统计

java ×2

file ×1

file-io ×1