org.apache.commons.io.input

## Class SwappedDataInputStream

- java.lang.Object
- - java.io.InputStream
  - - java.io.FilterInputStream
    - - org.apache.commons.io.input.ProxyInputStream
      - - org.apache.commons.io.input.SwappedDataInputStream

All Implemented Interfaces:
  Closeable, DataInput, AutoCloseable

    public class SwappedDataInputStream
    extends ProxyInputStream
    implements DataInput

DataInput for systems relying on little endian data formats. When read, values will be changed from little endian to big endian formats for internal usage.

Origin of code: Avalon Excalibur (IO)

### Field Summary

### Fields inherited from class java.io.FilterInputStream

`in`

### Constructor Summary

Constructors
Constructor and Description
`SwappedDataInputStream(InputStream input)` Constructs a SwappedDataInputStream.

### Method Summary

All Methods Instance Methods Concrete Methods
`boolean` `readBoolean()` Return ``readByte()` !`
`byte` `readByte()` Invokes the delegate's `read()` method.
`char` `readChar()` Reads a character delegating to `readShort()`.
`double` `readDouble()` Delegates to `EndianUtils.readSwappedDouble(InputStream)`.
`float` `readFloat()` Delegates to `EndianUtils.readSwappedFloat(InputStream)`.
`void` `readFully(byte[] data)` Invokes the delegate's `read(byte[] data, int, int)` method.
`void` `readFully(byte[] data, int offset, int length)` Invokes the delegate's `read(byte[] data, int, int)` method.
`int` `readInt()` Delegates to `EndianUtils.readSwappedInteger(InputStream)`.
`String` `readLine()` Not currently supported - throws `UnsupportedOperationException`.
`long` `readLong()` Delegates to `EndianUtils.readSwappedLong(InputStream)`.
`short` `readShort()` Delegates to `EndianUtils.readSwappedShort(InputStream)`.
`int` `readUnsignedByte()` Invokes the delegate's `read()` method.
`int` `readUnsignedShort()` Delegates to `EndianUtils.readSwappedUnsignedShort(InputStream)`.
`String` `readUTF()` Not currently supported - throws `UnsupportedOperationException`.
`int` `skipBytes(int count)` Invokes the delegate's `skip(int)` method.

### Methods inherited from class org.apache.commons.io.input.ProxyInputStream

`afterRead, available, beforeRead, close, handleIOException, mark, markSupported, read, read, read, reset, skip`

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

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

### Constructor Detail

#### SwappedDataInputStream

    public SwappedDataInputStream(InputStream input)

Constructs a SwappedDataInputStream.

Parameters:
  `input` - InputStream to read from

### Method Detail

#### readBoolean

    public boolean readBoolean()
                        throws IOException,
                               EOFException

Return ``readByte()` != 0`

Specified by:
  `readBoolean` in interface `DataInput`
Returns:
  false if the byte read is zero, otherwise true
Throws:
  `IOException` - if an I/O error occurs
  `EOFException` - if an end of file is reached unexpectedly

#### readByte

    public byte readByte()
                  throws IOException,
                         EOFException

Invokes the delegate's `read()` method.

Specified by:
  `readByte` in interface `DataInput`
Returns:
  the byte read or -1 if the end of stream
Throws:
  `IOException` - if an I/O error occurs
  `EOFException` - if an end of file is reached unexpectedly

#### readChar

    public char readChar()
                  throws IOException,
                         EOFException

Reads a character delegating to `readShort()`.

Specified by:
  `readChar` in interface `DataInput`
Returns:
  the byte read or -1 if the end of stream
Throws:
  `IOException` - if an I/O error occurs
  `EOFException` - if an end of file is reached unexpectedly

#### readDouble

    public double readDouble()
                      throws IOException,
                             EOFException

Delegates to `EndianUtils.readSwappedDouble(InputStream)`.

Specified by:
  `readDouble` in interface `DataInput`
Returns:
  the read long
Throws:
  `IOException` - if an I/O error occurs
  `EOFException` - if an end of file is reached unexpectedly

#### readFloat

    public float readFloat()
                    throws IOException,
                           EOFException

Delegates to `EndianUtils.readSwappedFloat(InputStream)`.

Specified by:
  `readFloat` in interface `DataInput`
Returns:
  the read long
Throws:
  `IOException` - if an I/O error occurs
  `EOFException` - if an end of file is reached unexpectedly

#### readFully

    public void readFully(byte[] data)
                   throws IOException,
                          EOFException

Invokes the delegate's `read(byte[] data, int, int)` method.

Specified by:
  `readFully` in interface `DataInput`
Parameters:
  `data` - the buffer to read the bytes into
Throws:
  `EOFException` - if an end of file is reached unexpectedly
  `IOException` - if an I/O error occurs

#### readFully

    public void readFully(byte[] data,
                          int offset,
                          int length)
                   throws IOException,
                          EOFException

Invokes the delegate's `read(byte[] data, int, int)` method.

Specified by:
  `readFully` in interface `DataInput`
Parameters:
  `data` - the buffer to read the bytes into
  `offset` - The start offset
  `length` - The number of bytes to read
Throws:
  `EOFException` - if an end of file is reached unexpectedly
  `IOException` - if an I/O error occurs

#### readInt

    public int readInt()
                throws IOException,
                       EOFException

Delegates to `EndianUtils.readSwappedInteger(InputStream)`.

Specified by:
  `readInt` in interface `DataInput`
Returns:
  the read long
Throws:
  `EOFException` - if an end of file is reached unexpectedly
  `IOException` - if an I/O error occurs

#### readLine

    public String readLine()
                    throws IOException,
                           EOFException

Not currently supported - throws `UnsupportedOperationException`.

Specified by:
  `readLine` in interface `DataInput`
Returns:
  the line read
Throws:
  `EOFException` - if an end of file is reached unexpectedly
  `IOException` - if an I/O error occurs

#### readLong

    public long readLong()
                  throws IOException,
                         EOFException

Delegates to `EndianUtils.readSwappedLong(InputStream)`.

Specified by:
  `readLong` in interface `DataInput`
Returns:
  the read long
Throws:
  `EOFException` - if an end of file is reached unexpectedly
  `IOException` - if an I/O error occurs

#### readShort

    public short readShort()
                    throws IOException,
                           EOFException

Delegates to `EndianUtils.readSwappedShort(InputStream)`.

Specified by:
  `readShort` in interface `DataInput`
Returns:
  the read long
Throws:
  `EOFException` - if an end of file is reached unexpectedly
  `IOException` - if an I/O error occurs

#### readUnsignedByte

    public int readUnsignedByte()
                         throws IOException,
                                EOFException

Invokes the delegate's `read()` method.

Specified by:
  `readUnsignedByte` in interface `DataInput`
Returns:
  the byte read or -1 if the end of stream
Throws:
  `EOFException` - if an end of file is reached unexpectedly
  `IOException` - if an I/O error occurs

#### readUnsignedShort

    public int readUnsignedShort()
                          throws IOException,
                                 EOFException

Delegates to `EndianUtils.readSwappedUnsignedShort(InputStream)`.

Specified by:
  `readUnsignedShort` in interface `DataInput`
Returns:
  the read long
Throws:
  `EOFException` - if an end of file is reached unexpectedly
  `IOException` - if an I/O error occurs

#### readUTF

    public String readUTF()
                   throws IOException,
                          EOFException

Not currently supported - throws `UnsupportedOperationException`.

Specified by:
  `readUTF` in interface `DataInput`
Returns:
  UTF String read
Throws:
  `EOFException` - if an end of file is reached unexpectedly
  `IOException` - if an I/O error occurs

#### skipBytes

    public int skipBytes(int count)
                  throws IOException,
                         EOFException

Invokes the delegate's `skip(int)` method.

Specified by:
  `skipBytes` in interface `DataInput`
Parameters:
  `count` - the number of bytes to skip
Returns:
  the number of bytes to skipped or -1 if the end of stream
Throws:
  `EOFException` - if an end of file is reached unexpectedly
  `IOException` - if an I/O error occurs