# CSJ2K.j2k.util.ISRandomAccessIO

## Content

<div class="doc-site-dotnet-api-container">



  <h1 id="CSJ2K_j2k_util_ISRandomAccessIO" data-uid="CSJ2K.j2k.util.ISRandomAccessIO" class="text-break">ISRandomAccessIO Class
</h1>
  <div class="markdown level0 summary"></div>
  <div class="markdown level0 conceptual"></div>
  <div class="inheritance">
    <h5>Inheritance</h5>
    <div class="level0"><a class="xref" href="https://learn.microsoft.com/dotnet/api/system.object">object</a></div>
    <div class="level1"><span class="xref">ISRandomAccessIO</span></div>
  </div>
  <div class="implements">
    <h5>Implements</h5>
    <div><a class="xref" href="CSJ2K.j2k.io.RandomAccessIO.html">RandomAccessIO</a></div>
    <div><a class="xref" href="CSJ2K.j2k.io.BinaryDataInput.html">BinaryDataInput</a></div>
    <div><a class="xref" href="CSJ2K.j2k.io.BinaryDataOutput.html">BinaryDataOutput</a></div>
  </div>
  <h6><strong>Namespace</strong>: <a class="xref" href="CSJ2K.j2k.util.html">CSJ2K.j2k.util</a></h6>
  <h6><strong>Assembly</strong>: C1.WPF.ReportViewer.4.6.2.dll</h6>
  <h5 id="CSJ2K_j2k_util_ISRandomAccessIO_syntax">Syntax</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">public class ISRandomAccessIO : RandomAccessIO, BinaryDataInput, BinaryDataOutput</code></pre>
  </div>
  <div class="codewrapper">
    <pre><code class="lang-vbnet hljs">Public Class ISRandomAccessIO
    Implements RandomAccessIO, BinaryDataInput, BinaryDataOutput</code></pre>
  </div>
  <h3 id="constructors">Constructors
</h3>
  <table class="table table-bordered table-condensed">
    <thead>
      <tr>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td id="CSJ2K_j2k_util_ISRandomAccessIO__ctor_System_IO_Stream_" data-uid="CSJ2K.j2k.util.ISRandomAccessIO.#ctor(System.IO.Stream)">
          <a class="xref" href="CSJ2K.j2k.util.ISRandomAccessIO.-ctor.html#CSJ2K_j2k_util_ISRandomAccessIO__ctor_System_IO_Stream_">ISRandomAccessIO(Stream)</a>
        </td>
        <td class="markdown level1 summary"><p>Creates a new RandomAccessIO wrapper for the given InputStream
'is'. The internal cache buffer size and increment is to to 256 kB. The
maximum buffer size is set to Integer.MAX_VALUE (2 GB).</p>
</td>
      </tr>
      <tr>
        <td id="CSJ2K_j2k_util_ISRandomAccessIO__ctor_System_IO_Stream_System_Int32_System_Int32_System_Int32_" data-uid="CSJ2K.j2k.util.ISRandomAccessIO.#ctor(System.IO.Stream,System.Int32,System.Int32,System.Int32)">
          <a class="xref" href="CSJ2K.j2k.util.ISRandomAccessIO.-ctor.html#CSJ2K_j2k_util_ISRandomAccessIO__ctor_System_IO_Stream_System_Int32_System_Int32_System_Int32_">ISRandomAccessIO(Stream, int, int, int)</a>
        </td>
        <td class="markdown level1 summary"><p>Creates a new RandomAccessIO wrapper for the given InputStream
'is'. The internal cache buffer will have size 'size' and will
increment by 'inc' each time it is needed. The maximum buffer size is
limited to 'maxsize'.</p>
</td>
      </tr>
    </tbody>
  </table>
  <h3 id="properties">Properties
</h3>
  <table class="table table-bordered table-condensed">
    <thead>
      <tr>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td id="CSJ2K_j2k_util_ISRandomAccessIO_ByteOrdering" data-uid="CSJ2K.j2k.util.ISRandomAccessIO.ByteOrdering">
          <a class="xref" href="CSJ2K.j2k.util.ISRandomAccessIO.ByteOrdering.html#CSJ2K_j2k_util_ISRandomAccessIO_ByteOrdering">ByteOrdering</a>
        </td>
        <td class="markdown level1 summary"><p>Returns the endianess (i.e., byte ordering) of multi-byte I/O
operations. Always EndianType.BIG_ENDIAN since this class implements
only big-endian.</p>
</td>
      </tr>
      <tr>
        <td id="CSJ2K_j2k_util_ISRandomAccessIO_Pos" data-uid="CSJ2K.j2k.util.ISRandomAccessIO.Pos">
          <a class="xref" href="CSJ2K.j2k.util.ISRandomAccessIO.Pos.html#CSJ2K_j2k_util_ISRandomAccessIO_Pos">Pos</a>
        </td>
        <td class="markdown level1 summary"><p>Returns the current position in the stream, which is the position from
where the next byte of data would be read. The first byte in the stream
is in position 0.</p>
</td>
      </tr>
    </tbody>
  </table>
  <h3 id="methods">Methods
</h3>
  <table class="table table-bordered table-condensed">
    <thead>
      <tr>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td id="CSJ2K_j2k_util_ISRandomAccessIO_close" data-uid="CSJ2K.j2k.util.ISRandomAccessIO.close">
          <a class="xref" href="CSJ2K.j2k.util.ISRandomAccessIO.close.html#CSJ2K_j2k_util_ISRandomAccessIO_close">close()</a>
        </td>
        <td class="markdown level1 summary"><p>Closes this object for reading as well as the wrapped InputStream, if
not already closed. The memory used by the cache is released.</p>
</td>
      </tr>
      <tr>
        <td id="CSJ2K_j2k_util_ISRandomAccessIO_flush" data-uid="CSJ2K.j2k.util.ISRandomAccessIO.flush">
          <a class="xref" href="CSJ2K.j2k.util.ISRandomAccessIO.flush.html#CSJ2K_j2k_util_ISRandomAccessIO_flush">flush()</a>
        </td>
        <td class="markdown level1 summary"><p>Does nothing since this class does not implement data output.</p>
</td>
      </tr>
      <tr>
        <td id="CSJ2K_j2k_util_ISRandomAccessIO_length" data-uid="CSJ2K.j2k.util.ISRandomAccessIO.length">
          <a class="xref" href="CSJ2K.j2k.util.ISRandomAccessIO.length.html#CSJ2K_j2k_util_ISRandomAccessIO_length">length()</a>
        </td>
        <td class="markdown level1 summary"><p>Returns the length of the stream. This will cause all the data to be
read. This method will block until all the data is read, which can be
lengthy across the network.</p>
</td>
      </tr>
      <tr>
        <td id="CSJ2K_j2k_util_ISRandomAccessIO_read" data-uid="CSJ2K.j2k.util.ISRandomAccessIO.read">
          <a class="xref" href="CSJ2K.j2k.util.ISRandomAccessIO.read.html#CSJ2K_j2k_util_ISRandomAccessIO_read">read()</a>
        </td>
        <td class="markdown level1 summary"><p>Reads a byte of data from the stream. Prior to reading, the stream is
realigned at the byte level.</p>
</td>
      </tr>
      <tr>
        <td id="CSJ2K_j2k_util_ISRandomAccessIO_readByte" data-uid="CSJ2K.j2k.util.ISRandomAccessIO.readByte">
          <a class="xref" href="CSJ2K.j2k.util.ISRandomAccessIO.readByte.html#CSJ2K_j2k_util_ISRandomAccessIO_readByte">readByte()</a>
        </td>
        <td class="markdown level1 summary"><p>Reads a byte of data from the stream.</p>
</td>
      </tr>
      <tr>
        <td id="CSJ2K_j2k_util_ISRandomAccessIO_readDouble" data-uid="CSJ2K.j2k.util.ISRandomAccessIO.readDouble">
          <a class="xref" href="CSJ2K.j2k.util.ISRandomAccessIO.readDouble.html#CSJ2K_j2k_util_ISRandomAccessIO_readDouble">readDouble()</a>
        </td>
        <td class="markdown level1 summary"><p>Reads an IEEE double precision (i.e., 64 bit) floating-point number
from the input.</p>
</td>
      </tr>
      <tr>
        <td id="CSJ2K_j2k_util_ISRandomAccessIO_readFloat" data-uid="CSJ2K.j2k.util.ISRandomAccessIO.readFloat">
          <a class="xref" href="CSJ2K.j2k.util.ISRandomAccessIO.readFloat.html#CSJ2K_j2k_util_ISRandomAccessIO_readFloat">readFloat()</a>
        </td>
        <td class="markdown level1 summary"><p>Reads an IEEE single precision (i.e., 32 bit) floating-point number
from the input.</p>
</td>
      </tr>
      <tr>
        <td id="CSJ2K_j2k_util_ISRandomAccessIO_readFully_System_Byte___System_Int32_System_Int32_" data-uid="CSJ2K.j2k.util.ISRandomAccessIO.readFully(System.Byte[],System.Int32,System.Int32)">
          <a class="xref" href="CSJ2K.j2k.util.ISRandomAccessIO.readFully.html#CSJ2K_j2k_util_ISRandomAccessIO_readFully_System_Byte___System_Int32_System_Int32_">readFully(byte[], int, int)</a>
        </td>
        <td class="markdown level1 summary"><p>Reads 'len' bytes of data from this file into an array of bytes. This
method reads repeatedly from the stream until all the bytes are
read. This method blocks until all the bytes are read, the end of the
stream is detected, or an exception is thrown.</p>
</td>
      </tr>
      <tr>
        <td id="CSJ2K_j2k_util_ISRandomAccessIO_readInt" data-uid="CSJ2K.j2k.util.ISRandomAccessIO.readInt">
          <a class="xref" href="CSJ2K.j2k.util.ISRandomAccessIO.readInt.html#CSJ2K_j2k_util_ISRandomAccessIO_readInt">readInt()</a>
        </td>
        <td class="markdown level1 summary"><p>Reads a signed int (32 bit) from the input.</p>
</td>
      </tr>
      <tr>
        <td id="CSJ2K_j2k_util_ISRandomAccessIO_readLong" data-uid="CSJ2K.j2k.util.ISRandomAccessIO.readLong">
          <a class="xref" href="CSJ2K.j2k.util.ISRandomAccessIO.readLong.html#CSJ2K_j2k_util_ISRandomAccessIO_readLong">readLong()</a>
        </td>
        <td class="markdown level1 summary"><p>Reads a signed long (64 bit) from the input.</p>
</td>
      </tr>
      <tr>
        <td id="CSJ2K_j2k_util_ISRandomAccessIO_readShort" data-uid="CSJ2K.j2k.util.ISRandomAccessIO.readShort">
          <a class="xref" href="CSJ2K.j2k.util.ISRandomAccessIO.readShort.html#CSJ2K_j2k_util_ISRandomAccessIO_readShort">readShort()</a>
        </td>
        <td class="markdown level1 summary"><p>Reads a signed short (16 bit) from the input.</p>
</td>
      </tr>
      <tr>
        <td id="CSJ2K_j2k_util_ISRandomAccessIO_readUnsignedByte" data-uid="CSJ2K.j2k.util.ISRandomAccessIO.readUnsignedByte">
          <a class="xref" href="CSJ2K.j2k.util.ISRandomAccessIO.readUnsignedByte.html#CSJ2K_j2k_util_ISRandomAccessIO_readUnsignedByte">readUnsignedByte()</a>
        </td>
        <td class="markdown level1 summary"><p>Reads an unsigned byte (8 bit) from the input.</p>
</td>
      </tr>
      <tr>
        <td id="CSJ2K_j2k_util_ISRandomAccessIO_readUnsignedInt" data-uid="CSJ2K.j2k.util.ISRandomAccessIO.readUnsignedInt">
          <a class="xref" href="CSJ2K.j2k.util.ISRandomAccessIO.readUnsignedInt.html#CSJ2K_j2k_util_ISRandomAccessIO_readUnsignedInt">readUnsignedInt()</a>
        </td>
        <td class="markdown level1 summary"><p>Reads a unsigned int (32 bit) from the input.</p>
</td>
      </tr>
      <tr>
        <td id="CSJ2K_j2k_util_ISRandomAccessIO_readUnsignedShort" data-uid="CSJ2K.j2k.util.ISRandomAccessIO.readUnsignedShort">
          <a class="xref" href="CSJ2K.j2k.util.ISRandomAccessIO.readUnsignedShort.html#CSJ2K_j2k_util_ISRandomAccessIO_readUnsignedShort">readUnsignedShort()</a>
        </td>
        <td class="markdown level1 summary"><p>Reads an unsigned short (16 bit) from the input.</p>
</td>
      </tr>
      <tr>
        <td id="CSJ2K_j2k_util_ISRandomAccessIO_seek_System_Int32_" data-uid="CSJ2K.j2k.util.ISRandomAccessIO.seek(System.Int32)">
          <a class="xref" href="CSJ2K.j2k.util.ISRandomAccessIO.seek.html#CSJ2K_j2k_util_ISRandomAccessIO_seek_System_Int32_">seek(int)</a>
        </td>
        <td class="markdown level1 summary"><p>Moves the current position for the next read operation to offset. The
offset is measured from the beginning of the stream. If the offset is
set beyond the currently cached data, the missing data will be read
only when a read operation is performed. Setting the offset beyond the
end of the data will cause an EOFException only if the data length is
currently known, otherwise an IOException will occur when a read
operation is attempted at that position.</p>
</td>
      </tr>
      <tr>
        <td id="CSJ2K_j2k_util_ISRandomAccessIO_skipBytes_System_Int32_" data-uid="CSJ2K.j2k.util.ISRandomAccessIO.skipBytes(System.Int32)">
          <a class="xref" href="CSJ2K.j2k.util.ISRandomAccessIO.skipBytes.html#CSJ2K_j2k_util_ISRandomAccessIO_skipBytes_System_Int32_">skipBytes(int)</a>
        </td>
        <td class="markdown level1 summary"><p>Skips 'n' bytes from the input.</p>
</td>
      </tr>
      <tr>
        <td id="CSJ2K_j2k_util_ISRandomAccessIO_write_System_Byte_" data-uid="CSJ2K.j2k.util.ISRandomAccessIO.write(System.Byte)">
          <a class="xref" href="CSJ2K.j2k.util.ISRandomAccessIO.write.html#CSJ2K_j2k_util_ISRandomAccessIO_write_System_Byte_">write(byte)</a>
        </td>
        <td class="markdown level1 summary"><p>Throws an IOException since this class does not implement data output.</p>
</td>
      </tr>
      <tr>
        <td id="CSJ2K_j2k_util_ISRandomAccessIO_writeByte_System_Int32_" data-uid="CSJ2K.j2k.util.ISRandomAccessIO.writeByte(System.Int32)">
          <a class="xref" href="CSJ2K.j2k.util.ISRandomAccessIO.writeByte.html#CSJ2K_j2k_util_ISRandomAccessIO_writeByte_System_Int32_">writeByte(int)</a>
        </td>
        <td class="markdown level1 summary"><p>Throws an IOException since this class does not implement data output.</p>
</td>
      </tr>
      <tr>
        <td id="CSJ2K_j2k_util_ISRandomAccessIO_writeDouble_System_Double_" data-uid="CSJ2K.j2k.util.ISRandomAccessIO.writeDouble(System.Double)">
          <a class="xref" href="CSJ2K.j2k.util.ISRandomAccessIO.writeDouble.html#CSJ2K_j2k_util_ISRandomAccessIO_writeDouble_System_Double_">writeDouble(double)</a>
        </td>
        <td class="markdown level1 summary"><p>Throws an IOException since this class does not implement data output.</p>
</td>
      </tr>
      <tr>
        <td id="CSJ2K_j2k_util_ISRandomAccessIO_writeFloat_System_Single_" data-uid="CSJ2K.j2k.util.ISRandomAccessIO.writeFloat(System.Single)">
          <a class="xref" href="CSJ2K.j2k.util.ISRandomAccessIO.writeFloat.html#CSJ2K_j2k_util_ISRandomAccessIO_writeFloat_System_Single_">writeFloat(float)</a>
        </td>
        <td class="markdown level1 summary"><p>Throws an IOException since this class does not implement data output.</p>
</td>
      </tr>
      <tr>
        <td id="CSJ2K_j2k_util_ISRandomAccessIO_writeInt_System_Int32_" data-uid="CSJ2K.j2k.util.ISRandomAccessIO.writeInt(System.Int32)">
          <a class="xref" href="CSJ2K.j2k.util.ISRandomAccessIO.writeInt.html#CSJ2K_j2k_util_ISRandomAccessIO_writeInt_System_Int32_">writeInt(int)</a>
        </td>
        <td class="markdown level1 summary"><p>Throws an IOException since this class does not implement data output.</p>
</td>
      </tr>
      <tr>
        <td id="CSJ2K_j2k_util_ISRandomAccessIO_writeLong_System_Int64_" data-uid="CSJ2K.j2k.util.ISRandomAccessIO.writeLong(System.Int64)">
          <a class="xref" href="CSJ2K.j2k.util.ISRandomAccessIO.writeLong.html#CSJ2K_j2k_util_ISRandomAccessIO_writeLong_System_Int64_">writeLong(long)</a>
        </td>
        <td class="markdown level1 summary"><p>Throws an IOException since this class does not implement data output.</p>
</td>
      </tr>
      <tr>
        <td id="CSJ2K_j2k_util_ISRandomAccessIO_writeShort_System_Int32_" data-uid="CSJ2K.j2k.util.ISRandomAccessIO.writeShort(System.Int32)">
          <a class="xref" href="CSJ2K.j2k.util.ISRandomAccessIO.writeShort.html#CSJ2K_j2k_util_ISRandomAccessIO_writeShort_System_Int32_">writeShort(int)</a>
        </td>
        <td class="markdown level1 summary"><p>Throws an IOException since this class does not implement data output.</p>
</td>
      </tr>
    </tbody>
  </table>

</div>
