import java.io.*;
public class Copy {
public static void main(String[] args) throws IOException{
File file1=new File("C:\\Users\\master\\Desktop\\FlappyBird");//源文件夹
File file2=new File("C:\\Users\\master\\Desktop\\表情包");//目标文件夹
file2.mkdirs();//创建目标文件夹
copy(file1,file2);//开始进行复制操作
}
public static void copy(File file1,File file2) throws IOException{
File[] files=file1.listFiles();//获取源文件夹下的所有抽象路径名
for (File file:files) {//开始遍历源文件夹
if(file.isDirectory()){//如果遍历到了文件夹
File file3=new File(file2,file.getName());//以目标文件夹为父目录创建抽象路径名
file3.mkdir();//创建文件夹
copy(file,file3);//递归复制整个文件夹
}else if(file.isFile()){//如果遍历到了文件
File file3=new File(file2,file.getName());//以目标文件夹为父目录创建抽象路径名
if(file3.exists()){
file3.createNewFile();//创建文件
}
//对源文件夹下的文件和目标文件夹下新创建的文件进行复制操作
BufferedInputStream bufferedInputStream=new BufferedInputStream(new FileInputStream(file));
BufferedOutputStream bufferedOutputStream=new BufferedOutputStream(new FileOutputStream(file3));
byte[]bytes=new byte[1024];
int len=bufferedInputStream.read(bytes,0,1024);
while(len!=-1){
bufferedOutputStream.write(bytes,0,len);
len=bufferedInputStream.read(bytes,0,len);
}
bufferedOutputStream.close();
bufferedInputStream.close();
}
}
}
}
Java IO之复制文件夹中的所有内容
猜你喜欢
转载自blog.csdn.net/wujunlulu/article/details/81944584
今日推荐
周排行