java 复制文件夹下所有文件到指定的文件夹,不改变目录结构
来源:互联网 发布:cms系统设计文档 编辑:程序博客网 时间:2024/06/11 19:34
import java.io.BufferedInputStream;import java.io.BufferedOutputStream;import java.io.DataInputStream;import java.io.DataOutputStream;import java.io.File;import java.io.FileInputStream;import java.io.FileOutputStream;import java.io.IOException;public class Demo3 { public static void main(String[] args) throws IOException { String path = "/home/mrzhan/workspace/copy"; String copyPath = "/home/mrzhan/workspace/copyPath"; copy(path,copyPath); } public static void copy(String path, String copyPath) throws IOException{ File filePath = new File(path); DataInputStream read ; DataOutputStream write; if(filePath.isDirectory()){ File[] list = filePath.listFiles(); for(int i=0; i<list.length; i++){ String newPath = path + File.separator + list[i].getName(); String newCopyPath = copyPath + File.separator + list[i].getName(); File newFile = new File(copyPath); if(!newFile.exists()){ newFile.mkdir(); } copy(newPath, newCopyPath); } }else if(filePath.isFile()){ read = new DataInputStream( new BufferedInputStream(new FileInputStream(path))); write = new DataOutputStream( new BufferedOutputStream(new FileOutputStream(copyPath))); byte [] buf = new byte[1024*512]; while(read.read(buf) != -1){ write.write(buf); } read.close(); write.close(); }else{ System.out.println("请输入正确的文件名或路径名"); } }}