Class FileCopyUtils

java.lang.Object
org.springframework.util.FileCopyUtils

public abstract class FileCopyUtils extends Object
Simple utility methods for file and stream copying. All copy methods use a block size of 4096 bytes, and close all affected streams when done. A variation of the copy methods from this class that leave streams open can be found in StreamUtils.

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

Since:
06.10.2003
Author:
Juergen Hoeller, Hyunjin Choi
See Also:
  • Field Summary

    Fields
    Modifier and Type
    Field
    Description
    static final int
    The default buffer size used when copying bytes.
  • Constructor Summary

    Constructors
    Constructor
    Description
     
  • Method Summary

    Modifier and Type
    Method
    Description
    static void
    copy(byte[] in, File out)
    Copy the contents of the given byte array to the given output File.
    static void
    copy(byte[] in, OutputStream out)
    Copy the contents of the given byte array to the given OutputStream.
    static int
    copy(File in, File out)
    Copy the contents of the given input File to the given output File.
    static int
    Copy the contents of the given InputStream to the given OutputStream.
    static int
    copy(Reader in, Writer out)
    Copy the contents of the given Reader to the given Writer.
    static void
    copy(String in, Writer out)
    Copy the contents of the given String to the given Writer.
    static byte[]
    Copy the contents of the given input File into a new byte array.
    static byte[]
    Copy the contents of the given InputStream into a new byte array.
    static String
    Copy the contents of the given Reader into a String.

    Methods inherited from class java.lang.Object

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

    • BUFFER_SIZE

      public static final int BUFFER_SIZE
      The default buffer size used when copying bytes.
      See Also:
  • Constructor Details

    • FileCopyUtils

      public FileCopyUtils()
  • Method Details

    • copy

      public static int copy(File in, File out) throws IOException
      Copy the contents of the given input File to the given output File.
      Parameters:
      in - the file to copy from
      out - the file to copy to
      Returns:
      the number of bytes copied
      Throws:
      IOException - in case of I/O errors
    • copy

      public static void copy(byte[] in, File out) throws IOException
      Copy the contents of the given byte array to the given output File.
      Parameters:
      in - the byte array to copy from
      out - the file to copy to
      Throws:
      IOException - in case of I/O errors
    • copyToByteArray

      public static byte[] copyToByteArray(File in) throws IOException
      Copy the contents of the given input File into a new byte array.
      Parameters:
      in - the file to copy from
      Returns:
      the new byte array that has been copied to
      Throws:
      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. Closes both streams when done.
      Parameters:
      in - the stream to copy from
      out - the stream to copy to
      Returns:
      the number of bytes copied
      Throws:
      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. Closes the stream when done.
      Parameters:
      in - the byte array to copy from
      out - the OutputStream to copy to
      Throws:
      IOException - in case of I/O errors
    • copyToByteArray

      public static byte[] copyToByteArray(@Nullable InputStream in) throws IOException
      Copy the contents of the given InputStream into a new byte array. Closes the stream when done.
      Parameters:
      in - the stream to copy from (may be null or empty)
      Returns:
      the new byte array that has been copied to (possibly empty)
      Throws:
      IOException - in case of I/O errors
    • copy

      public static int copy(Reader in, Writer out) throws IOException
      Copy the contents of the given Reader to the given Writer. Closes both when done.
      Parameters:
      in - the Reader to copy from
      out - the Writer to copy to
      Returns:
      the number of characters copied
      Throws:
      IOException - in case of I/O errors
    • copy

      public static void copy(String in, Writer out) throws IOException
      Copy the contents of the given String to the given Writer. Closes the writer when done.
      Parameters:
      in - the String to copy from
      out - the Writer to copy to
      Throws:
      IOException - in case of I/O errors
    • copyToString

      public static String copyToString(@Nullable Reader in) throws IOException
      Copy the contents of the given Reader into a String. Closes the reader when done.
      Parameters:
      in - the reader to copy from (may be null or empty)
      Returns:
      the String that has been copied to (possibly empty)
      Throws:
      IOException - in case of I/O errors