IRandomAccessStream IRandomAccessStream IRandomAccessStream IRandomAccessStream Interface

Supports random access of data in input and output streams.

Syntax

Declaration

public interface IRandomAccessStreampublic interface IRandomAccessStreamPublic Interface IRandomAccessStream

Inheritance Hierarchy

Remarks

For more info, see Quickstart: Reading and writing a file, which shows how to read and write bytes to a file by using a RandomAccessStream. To encode an image by using a stream, see Imaging.

Properties summary

Gets a value that indicates whether the stream can be read from.

Gets a value that indicates whether the stream can be written to.

Gets the byte offset of the stream.

Gets or sets the size of the random access stream.

Methods summary

Creates a new instance of a IRandomAccessStream over the same resource as the current stream.

Returns an input stream at a specified location in a stream.

Returns an output stream at a specified location in a stream.

Sets the position of the stream to the specified value.

Properties

  • CanRead
    CanRead
    CanRead
    CanRead

    Gets a value that indicates whether the stream can be read from.

    public bool CanRead { get; }public bool CanRead { get; }Public ReadOnly Property CanRead As bool

    Property Value

    • bool
      bool
      bool
      bool

      True if the stream can be read from. Otherwise, false.

  • CanWrite
    CanWrite
    CanWrite
    CanWrite

    Gets a value that indicates whether the stream can be written to.

    public bool CanWrite { get; }public bool CanWrite { get; }Public ReadOnly Property CanWrite As bool

    Property Value

    • bool
      bool
      bool
      bool

      True if the stream can be written to. Otherwise, false.

  • Position
    Position
    Position
    Position

    Gets the byte offset of the stream.

    public ulong Position { get; }public ulong Position { get; }Public ReadOnly Property Position As ulong

    Property Value

    • ulong
      ulong
      ulong
      ulong

      The number of bytes from the start of the stream.

    Remarks

    The initial offset of a IRandomAccessStream is 0.

    This offset is affected by both IInputStream and IOutputStream operations.

  • Size
    Size
    Size
    Size

    Gets or sets the size of the random access stream.

    public ulong Size { get; set; }public ulong Size { get; set; }Public ReadWrite Property Size As ulong

    Property Value

    • ulong
      ulong
      ulong
      ulong

      The size of the stream.

Methods

  • CloneStream()
    CloneStream()
    CloneStream()
    CloneStream()

    Creates a new instance of a IRandomAccessStream over the same resource as the current stream.

    public IRandomAccessStream CloneStream()public IRandomAccessStream CloneStream()Public Function CloneStream() As IRandomAccessStream

    Returns

  • GetInputStreamAt(System.UInt64)
    GetInputStreamAt(System.UInt64)
    GetInputStreamAt(System.UInt64)
    GetInputStreamAt(System.UInt64)

    Returns an input stream at a specified location in a stream.

    public IInputStream GetInputStreamAt(System.UInt64 position)public IInputStream GetInputStreamAt(System.UInt64 position)Public Function GetInputStreamAt(position As System.UInt64) As IInputStream

    Parameters

    • position
      System.UInt64
      System.UInt64
      System.UInt64
      System.UInt64

      The location in the stream at which to begin.

    Returns

  • GetOutputStreamAt(System.UInt64)
    GetOutputStreamAt(System.UInt64)
    GetOutputStreamAt(System.UInt64)
    GetOutputStreamAt(System.UInt64)

    Returns an output stream at a specified location in a stream.

    public IOutputStream GetOutputStreamAt(System.UInt64 position)public IOutputStream GetOutputStreamAt(System.UInt64 position)Public Function GetOutputStreamAt(position As System.UInt64) As IOutputStream

    Parameters

    • position
      System.UInt64
      System.UInt64
      System.UInt64
      System.UInt64

      The location in the output stream at which to begin.

    Returns

  • Seek(System.UInt64)
    Seek(System.UInt64)
    Seek(System.UInt64)
    Seek(System.UInt64)

    Sets the position of the stream to the specified value.

    public void Seek(System.UInt64 position)public void Seek(System.UInt64 position)Public Function Seek(position As System.UInt64) As void

    Parameters

    • position
      System.UInt64
      System.UInt64
      System.UInt64
      System.UInt64

      The new position of the stream.

    Remarks

    Warning

    This method does not check the position to make sure the value is valid for the stream. If the position is invalid for the stream, the ReadAsync(Windows.Storage.Streams.IBuffer,System.UInt32,Windows.Storage.Streams.InputStreamOptions) and WriteAsync(Windows.Storage.Streams.IBuffer) methods will return an error if you call them.

Device family

Windows 10 (introduced v10.0.10240.0)

API contract

Windows.Foundation.UniversalApiContract (introduced v1)

Attributes

Windows.Foundation.Metadata.ContractVersionAttribute
Windows.Foundation.Metadata.GuidAttribute

Details

Assembly

Windows.Storage.Streams.dll