Java Copy Directory copyDirectoryTree(File copyFrom, File copyTo)

Here you can find the source of copyDirectoryTree(File copyFrom, File copyTo)

Description

copy Directory Tree

License

Open Source License

Declaration

public static void copyDirectoryTree(File copyFrom, File copyTo) throws IOException 

Method Source Code


//package com.java2s;
/*//from w w  w.  j av a  2  s .  co  m
    
The Martus(tm) free, social justice documentation and
monitoring software. Copyright (C) 2001-2007, Beneficent
Technology, Inc. (The Benetech Initiative).
    
Martus is free software; you can redistribute it and/or
modify it under the terms of the GNU General Public License
as published by the Free Software Foundation; either
version 2 of the License, or (at your option) any later
version with the additions and exceptions described in the
accompanying Martus license file entitled "license.txt".
    
It is distributed WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, including warranties of fitness of purpose or
merchantability.  See the accompanying Martus License and
GPL license for more details on the required license terms
for this software.
    
You should have received a copy of the GNU General Public
License along with this program; if not, write to the Free
Software Foundation, Inc., 59 Temple Place - Suite 330,
Boston, MA 02111-1307, USA.
    
To the extent this copyrighted software code is used in the 
Miradi project, it is subject to a royalty-free license to 
members of the Conservation Measures Partnership when 
used with the Miradi software as specified in the agreement 
between Benetech and WCS dated 5/1/05.
*/

import java.io.File;

import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.IOException;

public class Main {
    public static void copyDirectoryTree(File copyFrom, File copyTo) throws IOException {
        if (copyFrom.isDirectory()) {
            copyTo.mkdirs();
            String fileList[] = copyFrom.list();

            for (int i = 0; i < fileList.length; i++) {
                File targetFile = new File(copyTo, fileList[i]);
                File sourceFile = new File(copyFrom, fileList[i]);
                copyDirectoryTree(sourceFile, targetFile);
            }
        } else {
            FileInputStream inputStream = new FileInputStream(copyFrom);
            FileOutputStream outputStream = new FileOutputStream(copyTo);
            int chararcterToCopy;
            while ((chararcterToCopy = inputStream.read()) >= 0)
                outputStream.write(chararcterToCopy);
            inputStream.close();
            outputStream.close();
        }
    }
}

Related

  1. copyDirectoryContents(File directory, String targetDirName, boolean update)
  2. copyDirectoryContents(File source, File destination)
  3. copyDirectoryContents(File src, File target)
  4. copyDirectoryContents(File srcDir, File dstDir)
  5. copyDirectoryFromJar(String jarName, String srcDir, File tmpDir)
  6. copyDirectoryWithContents(final File srcPath, final File dstPath)