次の方法で共有


Stream.Write メソッド

派生クラスによってオーバーライドされた場合は、現在のストリームにバイト シーケンスを書き込み、書き込んだバイト数の分だけストリームの現在位置を進めます。

Public MustOverride Sub Write( _
   ByVal buffer() As Byte, _   ByVal offset As Integer, _   ByVal count As Integer _)
[C#]
public abstract void Write(byte[] buffer,intoffset,intcount);
[C++]
public: virtual void Write(unsigned charbuffer __gc[],intoffset,intcount) = 0;
[JScript]
public abstract function Write(
   buffer : Byte[],offset : int,count : int);

パラメータ

  • buffer
    バイト配列。このメソッドは、バッファから現在のストリームに、count で指定されたバイト数だけコピーします。
  • offset
    現在のストリームへのバイトのコピーを開始する位置を示す buffer 内のバイト オフセット。インデックス番号は 0 から始まります。
  • count
    現在のストリームに書き込むバイト数。

例外

例外の種類 条件
ArgumentException offsetcount の合計値が、バッファ長より大きい値です。
ArgumentNullException buffer が null 参照 (Visual Basic では Nothing) です。
ArgumentOutOfRangeException offset または count が負の値です。
IOException I/O エラーが発生しました。
NotSupportedException ストリームが書き込みをサポートしません。
ObjectDisposedException ストリームが閉じられた後でメソッドが呼び出されました。

解説

ファイルの作成およびテキストのファイルへの書き込みの例については、「 ファイルへのテキストの書き込み 」を参照してください。ファイルからのテキストの読み取りの例については、「 ファイルからのテキストの読み取り 」を参照してください。バイナリ ファイルの読み取りおよび書き込みの例については、「 新しく作成したデータ ファイルの読み取りと書き込み 」を参照してください。

現在のインスタンスが書き込みをサポートしているかどうかを判断するには、 CanWrite プロパティを使用します。

書き込み操作が成功した場合は、書き込まれたバイト数だけストリーム内の位置が進みます。例外が発生した場合は、ストリーム内の位置はそのまま変わりません。

既定の実装は、非同期の BeginWrite メソッドを呼び出します。

使用例

[Visual Basic, C#, C++] Write メソッドを使用して、入力ストリームを出力ストリームにコピーする方法の例を次に示します。

 
Const size As Integer = 4096
Dim bytes(4096) As Byte
Dim numBytes As Integer
numBytes = input.Read(bytes, 0, size)
While numBytes > 0
    output.Write(bytes, 0, numBytes)
    numBytes = input.Read(bytes, 0, size)
End While

[C#] 
const int size = 4096;
byte[] bytes = new byte[4096];
int numBytes;
while((numBytes = input.Read(bytes, 0, size)) > 0)
    output.Write(bytes, 0, numBytes);

[C++] 
const int size = 4096;
Byte bytes[] = new Byte[4096];
int numBytes;
while((numBytes = input->Read(bytes, 0, size)) > 0)
    output->Write(bytes, 0, numBytes);

[JScript] JScript のサンプルはありません。Visual Basic、C#、および C++ のサンプルを表示するには、このページの左上隅にある言語のフィルタ ボタン 言語のフィルタ をクリックします。

必要条件

プラットフォーム: Windows 98, Windows NT 4.0, Windows Millennium Edition, Windows 2000, Windows XP Home Edition, Windows XP Professional, Windows Server 2003 ファミリ, .NET Compact Framework - Windows CE .NET, Common Language Infrastructure (CLI) Standard

参照

Stream クラス | Stream メンバ | System.IO 名前空間 | 入出力操作 | ファイルからのテキストの読み取り | ファイルへのテキストの書き込み