类 StreamUtils


  • public abstract class StreamUtils
    extends Object
    Simple utility methods for dealing with streams. The copy methods of this class are similar to those defined in FileCopyUtils except that all affected streams are left open when done. All copy methods use a block size of 4096 bytes.

    Mainly for use within the framework, but also useful for application code.

    从以下版本开始:
    3.2.2
    作者:
    Juergen Hoeller, Phillip Webb, Brian Clozel
    另请参阅:
    FileCopyUtils
    • 字段详细资料

    • 方法详细资料

      • copyToByteArray

        public static byte[] copyToByteArray​(InputStream in)
                                      throws IOException
        Copy the contents of the given InputStream into a new byte array.

        Leaves the stream open when done.

        参数:
        in - the stream to copy from (may be null or empty)
        返回:
        the new byte array that has been copied to (possibly empty)
        抛出:
        IOException - in case of I/O errors
      • copyToString

        public static String copyToString​(InputStream in,
                                          Charset charset)
                                   throws IOException
        Copy the contents of the given InputStream into a String.

        Leaves the stream open when done.

        参数:
        in - the InputStream to copy from (may be null or empty)
        charset - the Charset to use to decode the bytes
        返回:
        the String that has been copied to (possibly empty)
        抛出:
        IOException - in case of I/O errors
      • copy

        public static void copy​(byte[] in,
                                OutputStream out)
                         throws IOException
        Copy the contents of the given byte array to the given OutputStream.

        Leaves the stream open when done.

        参数:
        in - the byte array to copy from
        out - the OutputStream to copy to
        抛出:
        IOException - in case of I/O errors
      • copy

        public static void copy​(String in,
                                Charset charset,
                                OutputStream out)
                         throws IOException
        Copy the contents of the given String to the given OutputStream.

        Leaves the stream open when done.

        参数:
        in - the String to copy from
        charset - the Charset
        out - the OutputStream to copy to
        抛出:
        IOException - in case of I/O errors
      • copy

        public static int copy​(InputStream in,
                               OutputStream out)
                        throws IOException
        Copy the contents of the given InputStream to the given OutputStream.

        Leaves both streams open when done.

        参数:
        in - the InputStream to copy from
        out - the OutputStream to copy to
        返回:
        the number of bytes copied
        抛出:
        IOException - in case of I/O errors
      • copyRange

        public static long copyRange​(InputStream in,
                                     OutputStream out,
                                     long start,
                                     long end)
                              throws IOException
        Copy a range of content of the given InputStream to the given OutputStream.

        If the specified range exceeds the length of the InputStream, this copies up to the end of the stream and returns the actual number of copied bytes.

        Leaves both streams open when done.

        参数:
        in - the InputStream to copy from
        out - the OutputStream to copy to
        start - the position to start copying from
        end - the position to end copying
        返回:
        the number of bytes copied
        抛出:
        IOException - in case of I/O errors
        从以下版本开始:
        4.3
      • drain

        public static int drain​(InputStream in)
                         throws IOException
        Drain the remaining content of the given InputStream.

        Leaves the InputStream open when done.

        参数:
        in - the InputStream to drain
        返回:
        the number of bytes read
        抛出:
        IOException - in case of I/O errors
        从以下版本开始:
        4.3