org.gjt.sp.util

## Class IOUtilities

- java.lang.Object
- - org.gjt.sp.util.IOUtilities

-     public class IOUtilities
      extends java.lang.Object

  IO tools that depend on JDK only.
  Since:
    4.3pre5

- - ### Method Summary

    All Methods Static Methods Instance Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `static void` | `closeQuietly(java.io.Closeable closeable)` Method that will close a `Closeable` ignoring it if it is null and ignoring exceptions.
    `void` | `closeQuietly(java.io.ObjectInput in)` Method that will close an `ObjectInput` ignoring it if it is null and ignoring exceptions.
    `void` | `closeQuietly(java.io.ObjectOutput out)` Method that will close an `ObjectOutput` ignoring it if it is null and ignoring exceptions.
    `static boolean` | `copyStream(int bufferSize, ProgressObserver progress, java.io.InputStream in, java.io.OutputStream out, boolean canStop)` Copy an input stream to an output stream.
    `static boolean` | `copyStream(ProgressObserver progress, java.io.InputStream in, java.io.OutputStream out, boolean canStop)` Copy an input stream to an output stream with a buffer of 4096 bytes.
    `static long` | `fileLength(java.io.File file)` Returns the length of a file.
    `static boolean` | `moveFile(java.io.File source, java.io.File dest)` Moves the source file to the destination.

    - ### Methods inherited from class java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- - ### Method Detail

    - #### moveFile

          public static boolean moveFile(java.io.File source,
                                         java.io.File dest)

      Moves the source file to the destination. If the destination cannot be created or is a read-only file, the method returns `false`. Otherwise, the contents of the source are copied to the destination, the source is deleted, and `true` is returned.
      Parameters:
        `source` - The source file to move.
        `dest` - The destination where to move the file.
      Returns:
        true on success, false otherwise.
      Since:
        jEdit 4.3pre9

    - #### copyStream

          public static boolean copyStream(int bufferSize,
                                           @Nullable
                                           ProgressObserver progress,
                                           java.io.InputStream in,
                                           java.io.OutputStream out,
                                           boolean canStop)
                                    throws java.io.IOException

      Copy an input stream to an output stream.
      Parameters:
        `bufferSize` - the size of the buffer
        `progress` - the progress observer it could be null
        `in` - the input stream
        `out` - the output stream
        `canStop` - if true, the copy can be stopped by interrupting the thread
      Returns:
        `true` if the copy was done, `false` if it was interrupted
      Throws:
        `java.io.IOException` - IOException If an I/O error occurs

    - #### copyStream

          public static boolean copyStream(@Nullable
                                           ProgressObserver progress,
                                           java.io.InputStream in,
                                           java.io.OutputStream out,
                                           boolean canStop)
                                    throws java.io.IOException

      Copy an input stream to an output stream with a buffer of 4096 bytes.
      Parameters:
        `progress` - the progress observer it could be null
        `in` - the input stream
        `out` - the output stream
        `canStop` - if true, the copy can be stopped by interrupting the thread
      Returns:
        `true` if the copy was done, `false` if it was interrupted
      Throws:
        `java.io.IOException` - IOException If an I/O error occurs

    - #### fileLength

          public static long fileLength(java.io.File file)

      Returns the length of a file. If it is a directory it will calculate recursively the length.
      Parameters:
        `file` - the file or directory
      Returns:
        the length of the file or directory. If the file doesn't exist it will return 0
      Since:
        4.3pre10

    - #### closeQuietly

          public static void closeQuietly(@Nullable
                                          java.io.Closeable closeable)

      Method that will close a `Closeable` ignoring it if it is null and ignoring exceptions.
      Parameters:
        `closeable` - the closeable to close.
      Since:
        jEdit 4.3pre8

    - #### closeQuietly

          public void closeQuietly(@Nullable
                                   java.io.ObjectInput in)

      Method that will close an `ObjectInput` ignoring it if it is null and ignoring exceptions.
      Parameters:
        `in` - the closeable to close.
      Since:
        jEdit 5.1pre1

    - #### closeQuietly

          public void closeQuietly(@Nullable
                                   java.io.ObjectOutput out)

      Method that will close an `ObjectOutput` ignoring it if it is null and ignoring exceptions.
      Parameters:
        `out` - the closeable to close.
      Since:
        jEdit 5.1pre1