public final class IOUtils
extends java.lang.Object
Modifier and Type | Field and Description |
---|---|
static java.nio.file.LinkOption[] |
EMPTY_LINK_OPTIONS
Empty array of of type
LinkOption . |
Modifier and Type | Method and Description |
---|---|
static void |
closeQuietly(java.io.Closeable c)
Closes the given Closeable and swallows any IOException that may occur.
|
static void |
copy(java.io.File sourceFile,
java.io.OutputStream outputStream)
Copies the source file to the given output stream.
|
static long |
copy(java.io.InputStream input,
java.io.OutputStream output)
Copies the content of a InputStream into an OutputStream.
|
static long |
copy(java.io.InputStream input,
java.io.OutputStream output,
int buffersize)
Copies the content of a InputStream into an OutputStream
|
static long |
copyRange(java.io.InputStream input,
long len,
java.io.OutputStream output)
Copies part of the content of a InputStream into an OutputStream.
|
static long |
copyRange(java.io.InputStream input,
long len,
java.io.OutputStream output,
int buffersize)
Copies part of the content of a InputStream into an OutputStream
|
static int |
read(java.io.File file,
byte[] array)
Reads as much from the file as possible to fill the given array.
|
static int |
readFully(java.io.InputStream input,
byte[] array)
Reads as much from input as possible to fill the given array.
|
static int |
readFully(java.io.InputStream input,
byte[] array,
int offset,
int len)
Reads as much from input as possible to fill the given array
with the given amount of bytes.
|
static void |
readFully(java.nio.channels.ReadableByteChannel channel,
java.nio.ByteBuffer byteBuffer)
Reads
b.remaining() bytes from the given channel
starting at the current channel's position. |
static byte[] |
readRange(java.io.InputStream input,
int len)
Gets part of the contents of an
InputStream as a byte[] . |
static byte[] |
readRange(java.nio.channels.ReadableByteChannel input,
int len)
Gets part of the contents of an
ReadableByteChannel as a byte[] . |
static long |
skip(java.io.InputStream input,
long numToSkip)
Skips the given number of bytes by repeatedly invoking skip on
the given input stream if necessary.
|
static byte[] |
toByteArray(java.io.InputStream input)
Gets the contents of an
InputStream as a byte[] . |
public static final java.nio.file.LinkOption[] EMPTY_LINK_OPTIONS
LinkOption
.public static long copy(java.io.InputStream input, java.io.OutputStream output) throws java.io.IOException
input
- the InputStream to copyoutput
- the target, may be null to simulate output to dev/null on Linux and NUL on Windowsjava.io.IOException
- if an error occurspublic static long copy(java.io.InputStream input, java.io.OutputStream output, int buffersize) throws java.io.IOException
input
- the InputStream to copyoutput
- the target, may be null to simulate output to dev/null on Linux and NUL on Windowsbuffersize
- the buffer size to use, must be bigger than 0java.io.IOException
- if an error occursjava.lang.IllegalArgumentException
- if buffersize is smaller than or equal to 0public static long skip(java.io.InputStream input, long numToSkip) throws java.io.IOException
In a case where the stream's skip() method returns 0 before the requested number of bytes has been skip this implementation will fall back to using the read() method.
This method will only skip less than the requested number of bytes if the end of the input stream has been reached.
input
- stream to skip bytes innumToSkip
- the number of bytes to skipjava.io.IOException
- on errorpublic static int read(java.io.File file, byte[] array) throws java.io.IOException
This method may invoke read repeatedly to fill the array and only read less bytes than the length of the array if the end of the stream has been reached.
file
- file to readarray
- buffer to filljava.io.IOException
- on errorpublic static int readFully(java.io.InputStream input, byte[] array) throws java.io.IOException
This method may invoke read repeatedly to fill the array and only read less bytes than the length of the array if the end of the stream has been reached.
input
- stream to read fromarray
- buffer to filljava.io.IOException
- on errorpublic static int readFully(java.io.InputStream input, byte[] array, int offset, int len) throws java.io.IOException
This method may invoke read repeatedly to read the bytes and only read less bytes than the requested length if the end of the stream has been reached.
input
- stream to read fromarray
- buffer to filloffset
- offset into the buffer to start filling atlen
- of bytes to readjava.io.IOException
- if an I/O error has occurredpublic static void readFully(java.nio.channels.ReadableByteChannel channel, java.nio.ByteBuffer byteBuffer) throws java.io.IOException
b.remaining()
bytes from the given channel
starting at the current channel's position.
This method reads repeatedly from the channel until the requested number of bytes are read. This method blocks until the requested number of bytes are read, the end of the channel is detected, or an exception is thrown.
channel
- the channel to read frombyteBuffer
- the buffer into which the data is read.java.io.IOException
- - if an I/O error occurs.java.io.EOFException
- - if the channel reaches the end before reading all the bytes.public static byte[] toByteArray(java.io.InputStream input) throws java.io.IOException
InputStream
as a byte[]
.
This method buffers the input internally, so there is no need to use a
BufferedInputStream
.
input
- the InputStream
to read fromjava.lang.NullPointerException
- if the input is nulljava.io.IOException
- if an I/O error occurspublic static void closeQuietly(java.io.Closeable c)
c
- Closeable to close, can be nullpublic static void copy(java.io.File sourceFile, java.io.OutputStream outputStream) throws java.io.IOException
sourceFile
- The file to read.outputStream
- The output stream to write.java.io.IOException
- if an I/O error occurs when reading or writing.public static long copyRange(java.io.InputStream input, long len, java.io.OutputStream output) throws java.io.IOException
input
- the InputStream to copyoutput
- the target Streamlen
- maximum amount of bytes to copyjava.io.IOException
- if an error occurspublic static long copyRange(java.io.InputStream input, long len, java.io.OutputStream output, int buffersize) throws java.io.IOException
input
- the InputStream to copylen
- maximum amount of bytes to copyoutput
- the target, may be null to simulate output to dev/null on Linux and NUL on Windowsbuffersize
- the buffer size to use, must be bigger than 0java.io.IOException
- if an error occursjava.lang.IllegalArgumentException
- if buffersize is smaller than or equal to 0public static byte[] readRange(java.io.InputStream input, int len) throws java.io.IOException
InputStream
as a byte[]
.input
- the InputStream
to read fromlen
- maximum amount of bytes to copyjava.lang.NullPointerException
- if the input is nulljava.io.IOException
- if an I/O error occurspublic static byte[] readRange(java.nio.channels.ReadableByteChannel input, int len) throws java.io.IOException
ReadableByteChannel
as a byte[]
.input
- the ReadableByteChannel
to read fromlen
- maximum amount of bytes to copyjava.lang.NullPointerException
- if the input is nulljava.io.IOException
- if an I/O error occursCopyright © 2010 - 2023 Adobe. All Rights Reserved