次の方法で共有


BufferedStream.Seek(Int64, SeekOrigin) メソッド

定義

現在のバッファー ストリーム内の位置を設定します。

public:
 override long Seek(long offset, System::IO::SeekOrigin origin);
public override long Seek (long offset, System.IO.SeekOrigin origin);
override this.Seek : int64 * System.IO.SeekOrigin -> int64
Public Overrides Function Seek (offset As Long, origin As SeekOrigin) As Long

パラメーター

offset
Int64

origin からのバイト オフセット。

origin
SeekOrigin

新しい位置を取得するための参照ポイントを示す SeekOrigin 型の値。

戻り値

現在のバッファー ストリーム内の新しい位置。

例外

ストリームが開いていないか、null になっています。

このストリームはシークをサポートしていません。

ストリームが閉じた後でメソッドが呼び出されました。

注釈

offsetが負の値の場合は、originで指定した位置から offset で指定したバイト数だけさかのぼった位置が新しい位置になります。 が 0 の場合 offset 、新しい位置は で origin指定された位置になります。 offsetが正の値の場合は、originで指定した位置から offset で指定したバイト数だけ進んだ位置が新しい位置になります。

オブジェクトが BufferedStream オブジェクトのベース ストリーム StreamReader である場合、 メソッドを Seek 呼び出すと、ストリームの位置がリーダー内の内部バッファーの位置と一致しなくなる可能性があります。 内部バッファーをリセットするには、 メソッドを StreamReader.DiscardBufferedData 呼び出します。ただし、このメソッドはパフォーマンスを低下させ、絶対に必要な場合にのみ呼び出す必要があります。

ストリームの長さを超える任意の場所へのシークがサポートされています。

適用対象

こちらもご覧ください