IRandomAccessStream IRandomAccessStream IRandomAccessStream IRandomAccessStream Interface

Definition

Supports random access of data in input and output streams.

public interface IRandomAccessStreampublic interface IRandomAccessStreamPublic Interface IRandomAccessStreampublic interface IRandomAccessStream
Inheritance
Attributes
Windows 10 requirements
Device family
Windows 10 (introduced v10.0.10240.0)
API contract
Windows.Foundation.UniversalApiContract (introduced v1)

Inherited Members

Inherited methods

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

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 boolpublic bool CanRead { get; }
Value
bool bool bool bool

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

Attributes
Additional features and requirements
Device family
Windows 10 (introduced v10.0.10240.0)
API contract
Windows.Foundation.UniversalApiContract (introduced v1)

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 boolpublic bool CanWrite { get; }
Value
bool bool bool bool

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

Attributes
Additional features and requirements
Device family
Windows 10 (introduced v10.0.10240.0)
API contract
Windows.Foundation.UniversalApiContract (introduced v1)

Position Position Position Position

Gets the byte offset of the stream.

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

The number of bytes from the start of the stream.

Attributes
Additional features and requirements
Device family
Windows 10 (introduced v10.0.10240.0)
API contract
Windows.Foundation.UniversalApiContract (introduced v1)

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 ulongpublic ulong Size { get; set; }
Value
ulong ulong ulong ulong

The size of the stream.

Attributes
Additional features and requirements
Device family
Windows 10 (introduced v10.0.10240.0)
API contract
Windows.Foundation.UniversalApiContract (introduced v1)

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 IRandomAccessStreampublic IRandomAccessStream CloneStream()
Returns

The new stream. The initial, internal position of the stream is 0.

The internal position and lifetime of this new stream are independent from the position and lifetime of the cloned stream.

Attributes
Additional features and requirements
Device family
Windows 10 (introduced v10.0.10240.0)
API contract
Windows.Foundation.UniversalApiContract (introduced v1)

GetInputStreamAt(UInt64) GetInputStreamAt(UInt64) GetInputStreamAt(UInt64) GetInputStreamAt(UInt64)

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

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

The location in the stream at which to begin.

Returns
Attributes
Additional features and requirements
Device family
Windows 10 (introduced v10.0.10240.0)
API contract
Windows.Foundation.UniversalApiContract (introduced v1)

GetOutputStreamAt(UInt64) GetOutputStreamAt(UInt64) GetOutputStreamAt(UInt64) GetOutputStreamAt(UInt64)

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

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

The location in the output stream at which to begin.

Returns
Attributes
Additional features and requirements
Device family
Windows 10 (introduced v10.0.10240.0)
API contract
Windows.Foundation.UniversalApiContract (introduced v1)

Seek(UInt64) Seek(UInt64) Seek(UInt64) Seek(UInt64)

Sets the position of the stream to the specified value.

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

The new position of the stream.

Attributes
Additional features and requirements
Device family
Windows 10 (introduced v10.0.10240.0)
API contract
Windows.Foundation.UniversalApiContract (introduced v1)

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(IBuffer, UInt32, InputStreamOptions) and WriteAsync(IBuffer) methods will return an error if you call them.