输入两个文件夹名称,将A文件夹内容全部拷贝到B文件夹
时间: 2023-08-07 10:07:45 浏览: 80
好的,您可以使用Java中的文件操作类File来实现这个功能。具体的实现步骤如下:
1. 首先创建File对象,分别表示A文件夹和B文件夹。
2. 然后使用File对象的listFiles()方法获取A文件夹中的所有文件和子文件夹。
3. 遍历A文件夹中的所有文件和子文件夹,如果是文件夹,则递归调用自己,否则就使用文件输入输出流把文件复制到B文件夹中。
以下是示例代码:
```java
import java.io.File;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.InputStream;
import java.io.OutputStream;
public class FileCopyDemo {
public static void main(String[] args) {
String sourceFolder = "A"; // A文件夹名称
String targetFolder = "B"; // B文件夹名称
File src = new File(sourceFolder);
File dest = new File(targetFolder);
if (!src.exists()) {
System.out.println("源文件夹不存在!");
return;
}
if (!src.isDirectory()) {
System.out.println("源文件夹不是一个文件夹!");
return;
}
if (!dest.exists()) {
dest.mkdirs();
}
if (!dest.isDirectory()) {
System.out.println("目标文件夹不是一个文件夹!");
return;
}
File[] files = src.listFiles();
for (File file : files) {
if (file.isDirectory()) {
copyFolder(file, new File(dest, file.getName()));
} else {
copyFile(file, new File(dest, file.getName()));
}
}
System.out.println("拷贝完成!");
}
private static void copyFolder(File src, File dest) {
if (!dest.exists()) {
dest.mkdirs();
}
File[] files = src.listFiles();
for (File file : files) {
if (file.isDirectory()) {
copyFolder(file, new File(dest, file.getName()));
} else {
copyFile(file, new File(dest, file.getName()));
}
}
}
private static void copyFile(File src, File dest) {
try (InputStream in = new FileInputStream(src); OutputStream out = new FileOutputStream(dest)) {
byte[] buffer = new byte[1024];
int length;
while ((length = in.read(buffer)) > 0) {
out.write(buffer, 0, length);
}
} catch (Exception e) {
e.printStackTrace();
}
}
}
```
注意:在实际使用中,您需要根据自己的具体需求,对示例代码进行修改。同时,为了避免误操作,建议您在使用前备份好A和B文件夹中的数据。
相关推荐
![application/x-rar](https://img-home.csdnimg.cn/images/20210720083606.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)