首页>代码>java swt客户端抓取项目中日志,配置,以及数据库信息>/zuidaima/export/src/com/duplicall/export/util/CopyDir.java
package com.duplicall.export.util;

import java.io.BufferedInputStream;
import java.io.BufferedOutputStream;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.IOException;

public class CopyDir {

    
   /* //源文件夹
    static String url1="C:/log";
    //目标文件夹
    static String url2="C:/AAA/A/";
    
    
    
    public static void main(String[] args) throws IOException {
        // TODO Auto-generated method stub
        //创建目标文件夹
      (new File(url2)).mkdirs();
      //获取源文件夹当前下的文件或目录
       File[] file=(new File(url1)).listFiles();
       for (int i = 0; i < file.length; i++) {
        if(file[i].isFile()){
            //复制文件
            copyFile(file[i],new File(url2+file[i].getName()));
        }
        if(file[i].isDirectory()){
            //复制目录
            String sorceDir=url1+File.separator+file[i].getName();
            String targetDir=url2+File.separator+file[i].getName();
            copyDirectiory(sorceDir, targetDir);
        }
    }
    
    }*/
  

  public static void copyFile(File sourcefile,File targetFile) throws IOException{
        
        //新建文件输入流并对它进行缓冲
        FileInputStream input=new FileInputStream(sourcefile);
        BufferedInputStream inbuff=new BufferedInputStream(input);
        
        //新建文件输出流并对它进行缓冲
        FileOutputStream out=new FileOutputStream(targetFile);
        BufferedOutputStream outbuff=new BufferedOutputStream(out);
        
        //缓冲数组
        byte[] b=new byte[1024*5];
        int len=0;
        while((len=inbuff.read(b))!=-1){
            outbuff.write(b, 0, len);
        }
        
        //刷新此缓冲的输出流
        outbuff.flush();
        
        //关闭流
        inbuff.close();
        outbuff.close();
        out.close();
        input.close();
        
        
    }
    
    public static void copyDirectiory(String sourceDir,String targetDir) throws IOException{
        
        //新建目标目录
        
        (new File(targetDir)).mkdirs();
        
        //获取源文件夹当下的文件或目录
        File[] file=(new File(sourceDir)).listFiles();
        
        for (int i = 0; i < file.length; i++) {
            if(file[i].isFile()){
                //源文件
                File sourceFile=file[i];
                    //目标文件
                File targetFile=new File(new File(targetDir).getAbsolutePath()+File.separator+file[i].getName());
                
                copyFile(sourceFile, targetFile);
            
            }
            
            
            if(file[i].isDirectory()){
                //准备复制的源文件夹
                String dir1=sourceDir+file[i].getName();
                //准备复制的目标文件夹
                String dir2=targetDir+"/"+file[i].getName();
                
                copyDirectiory(dir1, dir2);
            }
        }
        
    }
 }
最近下载更多
1358849392  LV21 2023年7月1日
zzuljh  LV9 2021年12月16日
qiheideguang  LV16 2019年9月11日
woshigsb  LV5 2018年9月7日
一个友好的小朋友  LV18 2017年4月4日
a3870764722a  LV22 2017年1月3日
aihui523  LV34 2016年12月29日
最代码官方  LV168 2016年12月29日
最近浏览更多
刘孟飞  LV19 6月21日
1358849392  LV21 2022年11月10日
qwqw900619  LV4 2022年7月16日
1265260263  LV4 2022年4月8日
zzuljh  LV9 2021年12月16日
itcaizhe  LV9 2021年7月26日
zyzyzy1  LV1 2021年4月30日
329512801  LV28 2021年4月8日
ma406805131  LV15 2021年3月11日
sun丶孙  LV8 2020年11月6日
顶部 客服 微信二维码 底部
>扫描二维码关注最代码为好友扫描二维码关注最代码为好友