Java FileInputStream Copy copyFile(final File srcFile, final File destFile)

Here you can find the source of copyFile(final File srcFile, final File destFile)

Description

This method copies the src file to dest file.

License

Open Source License

Parameter

Parameter Description
srcFile a parameter
destFile a parameter

Exception

Parameter Description
IOException an exception

Declaration

public static void copyFile(final File srcFile, final File destFile) throws IOException 

Method Source Code

//package com.java2s;
/********************************************************************************* 
* Ephesoft is a Intelligent Document Capture and Mailroom Automation program 
* developed by Ephesoft, Inc. Copyright (C) 2015 Ephesoft Inc. 
* 
* This program is free software; you can redistribute it and/or modify it under 
* the terms of the GNU Affero General Public License version 3 as published by the 
* Free Software Foundation with the addition of the following permission added 
* to Section 15 as permitted in Section 7(a): FOR ANY PART OF THE COVERED WORK 
* IN WHICH THE COPYRIGHT IS OWNED BY EPHESOFT, EPHESOFT DISCLAIMS THE WARRANTY 
* OF NON INFRINGEMENT OF THIRD PARTY RIGHTS. 
* 
* This program is distributed in the hope that it will be useful, but WITHOUT 
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS 
* FOR A PARTICULAR PURPOSE.  See the GNU Affero General Public License for more 
* details. /*from  w  w  w .  j a v a2s .c o  m*/
* 
* You should have received a copy of the GNU Affero General Public License along with 
* this program; if not, see http://www.gnu.org/licenses or write to the Free 
* Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 
* 02110-1301 USA. 
* 
* You can contact Ephesoft, Inc. headquarters at 111 Academy Way, 
* Irvine, CA 92617, USA. or at email address info@ephesoft.com. 
* 
* The interactive user interfaces in modified source and object code versions 
* of this program must display Appropriate Legal Notices, as required under 
* Section 5 of the GNU Affero General Public License version 3. 
* 
* In accordance with Section 7(b) of the GNU Affero General Public License version 3, 
* these Appropriate Legal Notices must retain the display of the "Ephesoft" logo. 
* If the display of the logo is not reasonably feasible for 
* technical reasons, the Appropriate Legal Notices must display the words 
* "Powered by Ephesoft". 
********************************************************************************/

import java.io.File;

import java.io.FileInputStream;

import java.io.FileOutputStream;

import java.io.IOException;
import java.io.InputStream;

import java.io.OutputStream;

public class Main {
    /**
     * This method copies the src file to dest file.
     * 
     * @param srcFile
     * @param destFile
     * @throws IOException
     */
    public static void copyFile(final File srcFile, final File destFile) throws IOException {
        InputStream input = null;
        input = new FileInputStream(srcFile);
        // Check if destination file's parent directory exist, if not, try creating it, if unsuccessful throw an exception.
        File parentFile = destFile.getParentFile();
        if ((null != parentFile) && (!parentFile.exists()) && (!parentFile.mkdirs())) {
            if (null != input) {
                input.close();
            }
            throw new IOException("Destination '" + destFile + "' parent directory cannot be created");
        }
        OutputStream out = null;
        out = new FileOutputStream(destFile);
        final byte[] buf = new byte[1024];
        int len = input.read(buf);
        while (len > 0) {
            out.write(buf, 0, len);
            len = input.read(buf);
        }
        if (input != null) {
            input.close();
        }
        if (out != null) {
            out.close();
        }

    }
}

Related

  1. copyFile(final File oldfile, final File newfile)
  2. copyFile(final File source, final File dest)
  3. copyFile(final File source, final File target)
  4. copyFile(final File src, final File dest)
  5. copyFile(final File src, final File dst)
  6. copyFile(final File srcPath, final File dstPath)
  7. copyFile(final InputStream in, final File destFile)
  8. copyFile(final String from, final String to)
  9. copyFile(final String sourceFile, final String destinationFile)