Here you can find the source of load(InputStream input, int bufsize)
Parameter | Description |
---|---|
input | The stream to load binary data from. |
bufsize | The size of the buffer to allocate for copying. |
public static byte[] load(InputStream input, int bufsize) throws IOException
//package com.java2s; /*//from ww w . j a va2s .c o m * The contents of this file are subject to the Mozilla Public License Version 1.1 * (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.mozilla.org/MPL/>. * * Software distributed under the License is distributed on an "AS IS" basis, WITHOUT * WARRANTY OF ANY KIND, either express or implied. See the License for the specific * language governing rights and limitations under the License. * * The Original Code is the Venice Web Communities System. * * The Initial Developer of the Original Code is Eric J. Bowersox <erbo@silcom.com>, * for Silverwrist Design Studios. Portions created by Eric J. Bowersox are * Copyright (C) 2002 Eric J. Bowersox/Silverwrist Design Studios. All Rights Reserved. * * Contributor(s): */ import java.io.*; public class Main { /** * The default buffer size to use for copying, if none is specified. */ public static int DEFAULT_BUFSIZE = 4096; /** * Takes the contents of an input stream and returns it as an array of bytes. * * @param input The stream to load binary data from. * @param bufsize The size of the buffer to allocate for copying. * @return A new byte array containing the contents of the specified input stream. * @exception java.io.IOException If an exception occurred while reading data. * @see #copy(java.io.InputStream,java.io.OutputStream,int) */ public static byte[] load(InputStream input, int bufsize) throws IOException { ByteArrayOutputStream stm = new ByteArrayOutputStream(); try { // copy the data to the input stream copy(input, stm, bufsize); return stm.toByteArray(); } // end try finally { // close our byte array stream before we go shutdown(stm); } // end finally } /** * Takes the contents of an input stream and returns it as an array of bytes. Uses a default * buffer size. * * @param input The stream to load binary data from. * @return A new byte array containing the contents of the specified input stream. * @exception java.io.IOException If an exception occurred while reading data. * @see #DEFAULT_BUFSIZE * @see #load(java.io.InputStream,int) */ public static byte[] load(InputStream input) throws IOException { return load(input, DEFAULT_BUFSIZE); } /** * Takes the contents of an input reader and returns it as a <CODE>StringBuffer</CODE>. * * @param input The reader to copy character data from. * @param bufsize The size of the buffer to allocate for copying. * @return A new <CODE>StringBuffer</CODE> containing the contents of the specified reader. * @exception java.io.IOException If an exception occurred while reading data. * @see #copy(java.io.Reader,java.io.Writer,int) */ public static StringBuffer load(Reader input, int bufsize) throws IOException { StringWriter wr = new StringWriter(); try { // copy from reader to StringWriter copy(input, wr, bufsize); return wr.getBuffer(); } // end try finally { // make sure and close the StringWriter before we go shutdown(wr); } // end finally } /** * Takes the contents of an input reader and returns it as a <CODE>StringBuffer</CODE>. Uses a * default buffer size. * * @param input The reader to copy character data from. * @return A new <CODE>StringBuffer</CODE> containing the contents of the specified reader. * @exception java.io.IOException If an exception occurred while reading data. * @see #DEFAULT_BUFSIZE * @see #load(java.io.Reader,int) */ public static StringBuffer load(Reader input) throws IOException { return load(input, DEFAULT_BUFSIZE); } /** * Copies the contents of the given input stream to the given output stream. * * @param input The stream to copy binary data from. * @param output The stream to copy binary data to. * @param bufsize The size of the buffer to allocate for copying. * @exception java.io.IOException If an exception occurred while reading or writing data. */ public static void copy(InputStream input, OutputStream output, int bufsize) throws IOException { byte[] buffer = new byte[bufsize]; int rd = input.read(buffer); while (rd >= 0) { // simple read-write loop to shove data out the door if (rd > 0) output.write(buffer, 0, rd); rd = input.read(buffer); } // end while } /** * Copies the contents of the given input stream to the given output stream. Uses a default * buffer size. * * @param input The stream to copy binary data from. * @param output The stream to copy binary data to. * @exception java.io.IOException If an exception occurred while reading or writing data. * @see #DEFAULT_BUFSIZE * @see #copy(java.io.InputStream,java.io.OutputStream,int) */ public static void copy(InputStream input, OutputStream output) throws IOException { copy(input, output, DEFAULT_BUFSIZE); } /** * Copies the contents of the given input reader to the given output writer. * * @param input The reader to copy character data from. * @param output The writer to copy character data to. * @param bufsize The size of the buffer to allocate for copying. * @exception java.io.IOException If an exception occurred while reading or writing data. */ public static void copy(Reader input, Writer output, int bufsize) throws IOException { char[] buffer = new char[bufsize]; int rd = input.read(buffer); while (rd >= 0) { // simple read-write loop to shove data out the door if (rd > 0) output.write(buffer, 0, rd); rd = input.read(buffer); } // end while } /** * Copies the contents of the given input reader to the given output writer. Uses a default * buffer size. * * @param input The reader to copy character data from. * @param output The writer to copy character data to. * @exception java.io.IOException If an exception occurred while reading or writing data. * @see #DEFAULT_BUFSIZE * @see #copy(java.io.Reader,java.io.Writer,int) */ public static void copy(Reader input, Writer output) throws IOException { copy(input, output, DEFAULT_BUFSIZE); } /** * Closes an input stream cleanly, without throwing an exception. * * @param stm The stream to be closed. * @see java.io.InputStream#close() */ public static void shutdown(InputStream stm) { try { // close the stream stm.close(); } // end try catch (IOException e) { // throw away the exception } // end catch } /** * Closes an output stream cleanly, without throwing an exception. * * @param stm The stream to be closed. * @see java.io.OutputStream#close() */ public static void shutdown(OutputStream stm) { try { // close the stream stm.close(); } // end try catch (IOException e) { // throw away the exception } // end catch } /** * Closes an input reader cleanly, without throwing an exception. * * @param stm The stream to be closed. * @see java.io.Reader#close() */ public static void shutdown(Reader rdr) { try { // close the stream rdr.close(); } // end try catch (IOException e) { // throw away the exception } // end catch } /** * Closes an output reader cleanly, without throwing an exception. * * @param stm The stream to be closed. * @see java.io.Writer#close() */ public static void shutdown(Writer wr) { try { // close the stream wr.close(); } // end try catch (IOException e) { // throw away the exception } // end catch } }