public static void main(String[] args) { // TODO code application logic here File f = new File("d:\\"); File [] file = f.listFiles(); for(File x:file){ System.out.println(x.getAbsoluteFile()); } }如何吧和这个代码改写成可以遍历d盘中的每个子文件以及每个字文件中的子文件。
时间: 2024-02-22 13:58:17 浏览: 105
你可以使用递归来遍历d盘中的每个子文件以及每个子文件中的子文件。可以按照以下方式修改代码:
```
public static void main(String[] args) {
File f = new File("d:\\");
printFiles(f);
}
public static void printFiles(File file) {
if(file.isDirectory()) {
File[] files = file.listFiles();
for(File f : files) {
printFiles(f);
}
} else {
System.out.println(file.getAbsolutePath());
}
}
```
在这个新的代码中,我们定义了一个新的方法`printFiles()`,该方法接收一个文件对象作为参数。如果该文件是一个目录,则递归调用`printFiles()`方法以遍历该目录中的每个子文件。如果该文件不是目录,则打印其绝对路径。
这个新代码将遍历d盘中的每个子文件以及每个子文件中的子文件。
阅读全文