使用Java遍历文件和目录

Was*_*RAR 0 java directory traversal file

我有一个小代码,可以返回任何目录下的文件列表。

我需要做的是在第一个给定目录下获取Directoriesand Files

这是我正在使用的代码。

    File dir = new File("C:/myDocument/myFolder");

    String[] children = dir.list();
    if (children == null) {

    } else {
        for (int i=0; i<children.length; i++) {

            String filename = children[i];
            System.out.println(filename);
        }
    }
Run Code Online (Sandbox Code Playgroud)

另一件事是,当我从Windows 7中选择路径时,得到了这个C:\myFolder\myFolder。如果我在Java中使用此路径,Invalide Escape sequence 则会收到此错误,是否必须更改它C:/myDocument/myFolder才能使其正常工作。

救命。

谢谢

Boz*_*zho 5

是的,正斜杠很好。它们被标准化为依赖于OS的分隔符。

该错误告诉您的是\m无效的转义序列。每个反斜杠尝试转义以下字符。因此,如果您需要在字符串中使用反斜杠,请使用双斜杠:"c:\\myDocuments\\myFolder"

为了获取目录和文件,请使用.listFiles(),然后file.isDirectory()检查它是否是目录。