Mega Code Archive

 
Categories / Java / File Input Output
 

Copies the InputStream into the OutputStream, until the end of the stream has been reached

import java.io.IOException; import java.io.InputStream; import java.io.OutputStream; /*   * JCommon : a free general purpose class library for the Java(tm) platform  *   *  * (C) Copyright 2000-2005, by Object Refinery Limited and Contributors.  *   * Project Info:  http://www.jfree.org/jcommon/index.html  *  * This library is free software; you can redistribute it and/or modify it   * under the terms of the GNU Lesser General Public License as published by   * the Free Software Foundation; either version 2.1 of the License, or   * (at your option) any later version.  *  * This library 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 Lesser General Public   * License for more details.  *  * You should have received a copy of the GNU Lesser General Public  * License along with this library; if not, write to the Free Software  * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301,   * USA.    *  * [Java is a trademark or registered trademark of Sun Microsystems, Inc.   * in the United States and other countries.]  *   * ------------  * IOUtils.java  * ------------  * (C)opyright 2002-2004, by Thomas Morgner and Contributors.  *  * Original Author:  Thomas Morgner;  * Contributor(s):   David Gilbert (for Object Refinery Limited);  *  * $Id: IOUtils.java,v 1.8 2009/01/22 08:34:58 taqua Exp $  *  * Changes  * -------  * 26-Jan-2003 : Initial version  * 23-Feb-2003 : Documentation  * 25-Feb-2003 : Fixed Checkstyle issues (DG);  * 29-Apr-2003 : Moved to jcommon  * 04-Jan-2004 : Fixed JDK 1.2.2 issues with createRelativeURL;  *               added support for query strings within these urls (TM);  */ /**  * The IOUtils provide some IO related helper methods.  *  * @author Thomas Morgner.  */ public class Main {   /**    * Copies the InputStream into the OutputStream, until the end of the stream    * has been reached.    *    * @param in the inputstream from which to read.    * @param out the outputstream where the data is written to.    * @param buffersize the buffer size.    * @throws IOException if a IOError occurs.    */   public void copyStreams(final InputStream in, final OutputStream out,            final int buffersize) throws IOException {       // create a 4kbyte buffer to read the file       final byte[] bytes = new byte[buffersize];       // the input stream does not supply accurate available() data       // the zip entry does not know the size of the data       int bytesRead = in.read(bytes);       while (bytesRead > -1) {           out.write(bytes, 0, bytesRead);           bytesRead = in.read(bytes);       }   } }