java.lang.Object
org.apache.tomcat.util.http.fileupload.util.Streams

public final class Streams extends Object
Utility class for working with streams.
  • Field Details

  • Method Details

    • copy

      public static long copy(InputStream inputStream, OutputStream outputStream, boolean closeOutputStream) throws IOException
      Copies the contents of the given InputStream to the given OutputStream. Shortcut for
         copy(pInputStream, pOutputStream, new byte[8192]);
       
      Parameters:
      inputStream - The input stream, which is being read. It is guaranteed, that InputStream.close() is called on the stream.
      outputStream - The output stream, to which data should be written. May be null, in which case the input streams contents are simply discarded.
      closeOutputStream - True guarantees, that OutputStream.close() is called on the stream. False indicates, that only OutputStream.flush() should be called finally.
      Returns:
      Number of bytes, which have been copied.
      Throws:
      IOException - An I/O error occurred.
    • copy

      public static long copy(InputStream inputStream, OutputStream outputStream, boolean closeOutputStream, byte[] buffer) throws IOException
      Copies the contents of the given InputStream to the given OutputStream.
      Parameters:
      inputStream - The input stream, which is being read. It is guaranteed, that InputStream.close() is called on the stream.
      outputStream - The output stream, to which data should be written. May be null, in which case the input streams contents are simply discarded.
      closeOutputStream - True guarantees, that OutputStream.close() is called on the stream. False indicates, that only OutputStream.flush() should be called finally.
      buffer - Temporary buffer, which is to be used for copying data.
      Returns:
      Number of bytes, which have been copied.
      Throws:
      IOException - An I/O error occurred.
    • asString

      public static String asString(InputStream inputStream) throws IOException
      This convenience method allows to read a FileItemStream's content into a string. The platform's default character encoding is used for converting bytes into characters.
      Parameters:
      inputStream - The input stream to read.
      Returns:
      The streams contents, as a string.
      Throws:
      IOException - An I/O error occurred.
      See Also:
    • asString

      public static String asString(InputStream inputStream, String encoding) throws IOException
      This convenience method allows to read a FileItemStream's content into a string, using the given character encoding.
      Parameters:
      inputStream - The input stream to read.
      encoding - The character encoding, typically "UTF-8".
      Returns:
      The streams contents, as a string.
      Throws:
      IOException - An I/O error occurred.
      See Also:
    • checkFileName

      public static String checkFileName(String fileName)
      Checks, whether the given file name is valid in the sense, that it doesn't contain any NUL characters. If the file name is valid, it will be returned without any modifications. Otherwise, an InvalidFileNameException is raised.
      Parameters:
      fileName - The file name to check
      Returns:
      Unmodified file name, if valid.
      Throws:
      InvalidFileNameException - The file name was found to be invalid.