Here you can find the source of copyDirectory(File srcDir, File dstDir)
public static void copyDirectory(File srcDir, File dstDir) throws IOException
//package com.java2s; /*/*from w w w . j ava2 s. c o m*/ * Japex software ("Software") * * Copyright, 2004-2007 Sun Microsystems, Inc. All Rights Reserved. * * Software is licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. You may * obtain a copy of the License at: * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the * License for the specific language governing permissions and limitations. * * Sun supports and benefits from the global community of open source * developers, and thanks the community for its important contributions and * open standards-based technology, which Sun has adopted into many of its * products. * * Please note that portions of Software may be provided with notices and * open source licenses from such communities and third parties that govern the * use of those portions, and any licenses granted hereunder do not alter any * rights and obligations you may have under such open source licenses, * however, the disclaimer of warranty and limitation of liability provisions * in this License will apply to all Software in this distribution. * * You acknowledge that the Software is not designed, licensed or intended * for use in the design, construction, operation or maintenance of any nuclear * facility. * * Apache License * Version 2.0, January 2004 * http://www.apache.org/licenses/ * */ import java.io.*; public class Main { public static void copyDirectory(File srcDir, File dstDir) throws IOException { if (srcDir.isDirectory()) { if (!dstDir.exists()) { dstDir.mkdir(); } String[] children = srcDir.list(); for (int i = 0; i < children.length; i++) { copyDirectory(new File(srcDir, children[i]), new File(dstDir, children[i])); } } else { copyFile(srcDir, dstDir); } } public static void copyFile(File src, File dst) throws IOException { InputStream in = new FileInputStream(src); OutputStream out = new FileOutputStream(dst); int len; byte[] buf = new byte[1024]; while ((len = in.read(buf)) > 0) { out.write(buf, 0, len); } in.close(); out.close(); } }