Flushメソッドを使ってStreamに書き込んだ内容をフラッシュする 言語: C# VB Writeメソッドで書き込んだデータをフラッシュさせるには、Flushメソッドを呼び出します。 FileStreamなど、内部でバッファリングが行われるように実装されているStreamでは、Flushメソッドを呼び出すことで内部バッファに格納された内容を反映させることができます。 ただ、Closeメソッドを呼び出したりusingステートメントから抜け出る際には自動的にフラッシュされるので、Streamを閉じる前においてはFlushメソッドを呼び出す必要はありません。 Flushメソッドを使ってStreamに書き込んだ内容をフラッシュする すべて選択してコピー ダウンロード 行番号を表示する using System; using System.IO; class Sample { static void Main() { using (var stream = File.OpenWrite("sample.dat")) { // 書き込むデータが格納されているバイト配列 var buffer = new byte[8] {0x41, 0x42, 0x43, 0x44, 0x45, 0x46, 0x47, 0x48}; // bufferの0番目から4バイト分(buffer[0]〜buffer[3])をstreamに書き込む stream.Write(buffer, 0, 4); // 書き込んだ内容をフラッシュする stream.Flush(); // bufferの4番目から4バイト分(buffer[4]〜buffer[7])をstreamに書き込む stream.Write(buffer, 4, 4); } // usingステートメントから抜け出る際にもDisposeメソッドにより自動的にフラッシュされる } } 関連するページ Streamの長さとStream内の現在位置を取得する Writeメソッドを使ってStreamにデータを書き込む WriteByteメソッドを使ってStreamに1バイトずつデータを書き込む SetLengthメソッドを使ってStreamの長さを変更する SetLengthメソッドを使ってStreamの長さを書き込んだ長さに合わせて変更する Streamの長さをいったん0に設定して内容を破棄してから書き込みを行う FileStreamを作成する際に既存の内容を破棄してから書き込みを行う