package text; import java.io.BufferedReader; import java.io.File; import java.io.FileInputStream; import java.io.FileNotFoundException; import java.io.FileOutputStream; import java.io.IOException; import java.io.InputStream; import java.io.InputStreamReader; import java.io.OutputStream; import java.io.PrintStream; public class fileCopy { public static void main(String[] args) throws IOException { copy("G:/test","E:/test"); System.out.println("复制成功!"); } private static void copy(String f1, String f2) throws IOException { File file1=new File(f1); /* File file2=new File(f2);*/ File[] flist=file1.listFiles(); for (File f : flist) { if(f.isFile()){ copyFile2(f.getPath(),f2+"/"+f.getName()); //调用复制文件的方法 System.out.println("原路径["+f.getPath()+"] 被复制路径["+f2+"/"+f.getName()+"]"); }else if(f.isDirectory()){ copyFile1(f.getPath(),f2+"/"+f.getName()); //调用复制文件夹的方法 System.out.println("原路径["+f.getPath()+"] 被复制路径["+f2+"/"+f.getName()+"]"); } } } /** * 复制文件夹 * @throws IOException */ public static void copyFile1(String f1,String f2) throws IOException{ //创建文件夹 File file=new File(f2); if(!file.exists()){ file.mkdirs(); } copy(f1,f2); } /** * 复制文件 * @throws IOException */ public static void copyFile2(String f1, String f2) throws IOException { try { InputStream input =new FileInputStream(f1); OutputStream output=new FileOutputStream(f2); byte[] bt=new byte[1024]; if((input!=null)&&(output!=null)){ while((input.read(bt))!=(-1)){ output.write(bt,0,bt.length); } } input.close(); output.close(); } catch (FileNotFoundException e) { e.printStackTrace(); } } }
时间: 2024-10-18 11:06:09