import java.io.File;
import java.io.InputStream;
import java.io.OutputStream;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.IOException;
import java.util.Scanner;
public class CopyD{
public static void main(String args[]){
Scanner sca=new Scanner(System.in);
System.out.println("请输入需要复制的文件夹:");
String path1=sca.next();
System.out.println("请输入目标地址:");
String path2=sca.next();
File file1=new File(path1);
String name1=file1.getName();
String nPath=path2+File.separator+name1;
File nFile=new File(nPath);
nFile.mkdirs();
directory(path1,nPath);
}
public static void directory(String path1,String nPath){
File f1=new File(path1);
File []files=f1.listFiles();
for(int i=0;iif(files[i].isDirectory()){
File f3=new File(nPath+File.separator+files[i].getName());
f3.mkdir();
String nPath1=nPath+File.separator+files[i].getName();
directory(files[i].getAbsolutePath(),nPath1);
continue;
}
String nPath1=nPath+File.separator+files[i].getName();
copy(files[i].getAbsolutePath(),nPath1);
}
}
public static void copy(String path1,String nPath){
//System.out.println(path1);
//System.out.println(nPath);
File f1=new File(path1);
File f2=new File(nPath);
try{
f1.createNewFile();
f2.createNewFile();
InputStream in= new FileInputStream(f1);
byte []b=new byte[in.available()];
in.read(b);
OutputStream out=new FileOutputStream(f2);
out.write(b);
}catch(IOException ex){
ex.printStackTrace();
}
}
}