なおFileStreamでは、コンストラクタにFileMode.Appendを指定してインスタンスを作成すれば、ファイルを開いたあと自動的にストリームの末尾にシークされます。 従って、次の例は上記の例と同等の動作となります。

FileStreamを作成する際に末尾にシークしてから内容を追記する
Imports System
Imports System.IO

Class Sample
  Shared Sub Main()
    ' FileMode.Appendを指定してFileStreamを作成
    Using stream As Stream = New FileStream("sample.dat", FileMode.Append, FileAccess.Write)
      ' 書き込むデータが格納されているバイト配列
      Dim buffer() As Byte = New Byte(7) {&h41, &h42, &h43, &h44, &h45, &h46, &h47, &h48}

      ' bufferの8バイト分をstreamに書き込む
      stream.Write(buffer, 0, 8)
    End Using
  End Sub
End Class

シーケンシャルアクセスのみをサポートするストリームに対してSeekメソッドを呼び出したり、Positionプロパティに値を設定しようとした場合には、例外NotSupportedExceptionがスローされます。 例えば、NetworkStreamや標準入出力のストリームはシークがサポートされないストリームです。