把一个文件夹里得所有文件和子文件复制到到另一个文件甲
import java.io.File;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;
public class FileCopyDemo {
public void copyFile(String path,String newPath) {
File oldfile=new File(path);
File destFile=new File(newPath);
for(File file:oldfile.listFiles()) {
File subfile=new File(destFile.getAbsoluteFile()+File.separator+file.getName());
if (file.isDirectory()) {
if (!subfile.exists()) {
subfile.mkdirs();
//通过递归寻找文件并遇到文件夹创建文
//件夹遇见文件创建文件
}
copyFile(file.getAbsolutePath(),subfile.getAbsolutePath());
}else {
copy(file,subfile.getAbsoluteFile() );
}
}
}
//复制文件到新文件夹
public void copy(File oldFile,File newFile) {
try {
FileInputStream fis=new FileInputStream(oldFile);
FileOutputStream fos=new FileOutputStream(newFile);
int len=-1;
byte [] date=new byte[1024];
while ((len=fis.read(date))!=-1) {
fos.write(date, 0, len);
}
fis.close();
fos.flush();
fos.close();
} catch (FileNotFoundException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
public static void main(String[] args) {
FileCopyDemo fcd=new FileCopyDemo();
fcd.copyFile("E:/javaworkspace/java2","F:/java2");
}
}