黑马程序员技术交流社区

标题: 复制文件夹下的所有内容 [打印本页]

作者: &天马星空ぁ    时间: 2016-10-7 22:44
标题: 复制文件夹下的所有内容
[Java] 纯文本查看 复制代码
import java.io.File;
import java.io.FileReader;
import java.io.FileWriter;
import java.io.IOException;
//创建一个文件夹aa  复制 源文件aaa文件夹下的所有内容 到aa下
public class CopyDir {
        public static void main(String[] args) throws IOException {
                //源文件夹
                File aaa=new File("aaa");
                //要复制到的文件夹
                File aa=new File("aa");
                //创建要复制到的文件夹
                aa.mkdir();
                //复制源文件夹里边的所有内容
                copyFile(aaa,aa);
                System.out.println("复制完成");
               
        }

        public static void copyFile(File aaa, File aa) throws IOException {
                //获取源文件夹的文件列表File数组lfs
                File[] lfs = aaa.listFiles();
                //遍历数组lfs
                for (File file : lfs) {
                        //判断是否是文件夹
                        if(file.isDirectory()){
                                //如果file是文件夹,在目的aa文件夹下创建与此file文件夹名字相同的文件夹f
                                File f=new File(aa,file.getName());
                                f.mkdir();
                                //递归继续复制file到f
                                copyFile(file, f);
                        }else{
                                ////如果file是文件,在目的aa文件夹下创建与此file文件名字相同的文件f作为写入对象
                                File f=new File(aa,file.getName());
                                //创建输入流,读取源文件file
                                FileReader fr=new FileReader(file);
                                //创建输出流,写入到f文件
                                FileWriter fw=new FileWriter(f);
                                //按着2M大小复制
                                char[] ch=new char[1024];
                                int len=-1;
                                while((len=fr.read(ch))!=-1){
                                        fw.write(ch,0,len);
                                }
                                fw.close();
                                fr.close();
                        }
                }
        }
}






欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2