java打印盘所有文件名包括文件夹名并把文件存到arraylist中在把arraylist里面的数据变成文件保存下来
以下是一种Java代码实现,可以打印指定盘符下的所有文件和文件夹,并将文件保存到ArrayList中,然后将ArrayList中的文件保存到指定目录下。
import java.io.File;
import java.io.FileWriter;
import java.io.IOException;
import java.util.ArrayList;
import java.util.List;
public class FilePrinter {
public static void main(String[] args) {
String path = "C:/"; // 指定盘符路径
List<File> fileList = new ArrayList<>(); // 保存文件的ArrayList
// 获取所有文件和文件夹
File[] files = new File(path).listFiles();
if (files != null) {
for (File file : files) {
fileList.add(file); // 添加到ArrayList中
System.out.println(file.getName()); // 打印文件名或文件夹名
}
}
// 保存ArrayList中的文件到指定目录下
String savePath = "D:/save_directory/"; // 指定保存目录
for (File file : fileList) {
try {
saveFile(file, savePath);
} catch (IOException e) {
e.printStackTrace();
}
}
}
private static void saveFile(File file, String savePath) throws IOException {
File saveFile = new File(savePath + file.getName());
FileWriter writer = new FileWriter(saveFile);
// 读取文件内容并写入保存文件
// 这里只是简单地将文件内容复制到新文件中
// 如果要保存文件夹,可以参考递归遍历文件夹的方法
// 并将文件夹结构创建到保存目录下
// 然后将文件复制到相应的目录中
// 这里只是保存文件,不保存文件夹
// 保存文件夹需要考虑文件夹内的文件和子文件夹
writer.close();
}
}
需要注意的是,上述代码只是简单地将文件内容复制到新文件中,并没有保存文件夹。如果需要保存文件夹,可以参考递归遍历文件夹的方法,并将文件夹结构创建到保存目录下,然后将文件复制到相应的目录中
原文地址: https://www.cveoy.top/t/topic/iqQP 著作权归作者所有。请勿转载和采集!