一个存储文件信息的程序

时间:2018-10-15 12:44:34

标签: java file directory

对于如何制作一个程序来扫描文件的目录(以及子目录中的文件)以获取诸如大小,名称,路径等信息,我感到非常困惑。目前,我只需要将此信息写入txt文件,但稍后我将需要使用该txt文件将我的所有文件复制到远程计算机上的目录中。

我对Java没有很丰富的经验,因此,如果您认为我应该研究一些库,请告诉我。我认为获取此信息的最可怕的部分是如何告诉计算机您需要输入子目录来搜索其内容(例如从Home进入Documents文件夹,然后甚至从那里进入EnglishClass文件夹)。

我希望这不要太含糊。让我知道您是否需要更多详细信息。

1 个答案:

答案 0 :(得分:0)

这将打印当前目录中文件的列表及其大小:

List<String> fileList = Arrays.asList(new File(".").list());
fileList
    .stream()                   // Use java streaming api.
    .map(f -> new File(f))      // Convert file name into file.
    .forEach(f -> {             // Iterate over each file.
        // Print info about each file.
        System.out.println("File name:"+f.getAbsolutePath());
        System.out.println("File size:"+f.length());
    }
);

如果要扫描子目录,请阅读有关如何使用递归的信息。 (提示:f.isDirectory(){...})