Class IOUtils

java.lang.Object
org.apache.logging.log4j.core.util.IOUtils

public class IOUtils extends Object
Copied from Apache Commons IO revision 1686747.
  • Field Summary

    Fields
    Modifier and Type
    Field
    Description
    static final int
    Represents the end-of-file (or stream).
  • Constructor Summary

    Constructors
    Constructor
    Description
     
  • Method Summary

    Modifier and Type
    Method
    Description
    static int
    copy(Reader input, Writer output)
    Copies chars from a Reader to a Writer.
    static long
    copyLarge(Reader input, Writer output)
    Copies chars from a large (over 2GB) Reader to a Writer.
    static long
    copyLarge(Reader input, Writer output, char[] buffer)
    Copies chars from a large (over 2GB) Reader to a Writer.
    static String
    Gets the contents of a Reader as a String.

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
  • Field Details

    • EOF

      public static final int EOF
      Represents the end-of-file (or stream).
      See Also:
  • Constructor Details

    • IOUtils

      public IOUtils()
  • Method Details

    • copy

      public static int copy(Reader input, Writer output) throws IOException
      Copies chars from a Reader to a Writer.

      This method buffers the input internally, so there is no need to use a BufferedReader.

      Large streams (over 2GB) will return a chars copied value of -1 after the copy has completed since the correct number of chars cannot be returned as an int. For large streams use the copyLarge(Reader, Writer) method.

      Parameters:
      input - the Reader to read from
      output - the Writer to write to
      Returns:
      the number of characters copied, or -1 if > Integer.MAX_VALUE
      Throws:
      NullPointerException - if the input or output is null
      IOException - if an I/O error occurs
      Since:
      1.1
    • copyLarge

      public static long copyLarge(Reader input, Writer output) throws IOException
      Copies chars from a large (over 2GB) Reader to a Writer.

      This method buffers the input internally, so there is no need to use a BufferedReader.

      The buffer size is given by DEFAULT_BUFFER_SIZE.

      Parameters:
      input - the Reader to read from
      output - the Writer to write to
      Returns:
      the number of characters copied
      Throws:
      NullPointerException - if the input or output is null
      IOException - if an I/O error occurs
      Since:
      1.3
    • copyLarge

      public static long copyLarge(Reader input, Writer output, char[] buffer) throws IOException
      Copies chars from a large (over 2GB) Reader to a Writer.

      This method uses the provided buffer, so there is no need to use a BufferedReader.

      Parameters:
      input - the Reader to read from
      output - the Writer to write to
      buffer - the buffer to be used for the copy
      Returns:
      the number of characters copied
      Throws:
      NullPointerException - if the input or output is null
      IOException - if an I/O error occurs
      Since:
      2.2
    • toString

      public static String toString(Reader input) throws IOException
      Gets the contents of a Reader as a String.

      This method buffers the input internally, so there is no need to use a BufferedReader.

      Parameters:
      input - the Reader to read from
      Returns:
      the requested String
      Throws:
      NullPointerException - if the input is null
      IOException - if an I/O error occurs