java批量创建文件夹在C盘的Test文件夹下创建10个子文件夹,然后输出C盘根目录下所有文件及文件夹(包括隐藏的文件夹),并指明是文件还是文件夹。
时间: 2024-10-22 10:12:57 浏览: 22
在Java中,我们可以使用`java.io.File`类及其相关的API来批量创建文件夹和获取目录信息。下面是一个示例,展示了如何创建10个子文件夹,并列出C盘根目录的所有文件和文件夹:
首先,创建子文件夹:
```java
import java.io.File;
import java.util.ArrayList;
import java.util.List;
public class FolderCreation {
public static void main(String[] args) {
String parentFolderPath = "C:\\Test";
File parentFolder = new File(parentFolderPath);
if (!parentFolder.exists() && !parentFolder.mkdirs()) {
System.err.println("无法创建主文件夹");
}
for (int i = 1; i <= 10; i++) {
String childFolderPath = parentFolderPath + "\\" + "SubFolder" + i;
File childFolder = new File(childFolderPath);
if (!childFolder.mkdir()) {
System.err.println("无法创建子文件夹: " + childFolderPath);
}
}
System.out.println("文件夹创建成功");
}
}
```
这部分创建了一个名为`Test`的文件夹,并在其下创建了10个子文件夹。
接着,列出C盘根目录下的所有文件和文件夹:
```java
import java.io.File;
import java.io.IOException;
import java.nio.file.Files;
import java.nio.file.Path;
import java.nio.file.Paths;
public class DirectoryTraversal {
public static void main(String[] args) throws IOException {
Path rootPath = Paths.get("C:");
Files.walk(rootPath)
.forEach(path -> {
System.out.println(path.toFile().getName() + " (" +
path.toFile().isDirectory() ? "文件夹" : "文件") +
(path.toFile().isHidden() ? "(隐藏)" : ""));
});
}
}
```
这部分代码使用`Files.walk()`遍历C盘根目录,对每个路径打印名称、是否为文件夹以及是否为隐藏状态。
注意:在实际生产环境中,可能会遇到权限不足等问题,这取决于当前用户的权限设置。此外,遍历文件系统通常比较耗时,尤其是对于大型磁盘,需要谨慎使用。
阅读全文