次の方法で共有


StreamWriter.AutoFlush プロパティ

StreamWriter.Write が呼び出されるたびに、 StreamWriter によって基になるストリームに対するバッファをフラッシュするかどうかを示す値を取得または設定します。

Public Overridable Property AutoFlush As Boolean
[C#]
public virtual bool AutoFlush {get; set;}
[C++]
public: __property virtual bool get_AutoFlush();public: __property virtual void set_AutoFlush(bool);
[JScript]
public function get AutoFlush() : Boolean;public function set AutoFlush(Boolean);

プロパティ値

StreamWriter に強制的にバッファをフラッシュさせる場合は true 。それ以外の場合は false

解説

ストリームをフラッシュしても、 Flush または Close を明示的に呼び出さない限り、そのストリームの基になるエンコーダはフラッシュされません。 AutoFlushtrue に設定すると、データがバッファからストリームにフラッシュされますが、エンコーダの状態はフラッシュされません。これにより、エンコーダの状態 (一部の文字) を維持できるため、次のブロックの文字を正確にエンコードできるようになります。この動作は、一部の文字をエンコードするためにはエンコーダがあらかじめその文字に隣接する文字を受け取っておく必要がある UTF8 および UTF7 に対して有効です。

AutoFlushfalse に設定されている場合、 StreamWriter は最低限のバッファリングだけを行います。バッファリングは、指定されたエンコーディングに基づいてエンコーダで内部的に暗黙的に実行されます。 StreamWriter による書き込みの終了時に常に Close (または、少なくとも Flush) を呼び出すことを前提にして、 AutoFlushfalse に設定すると、パフォーマンスが向上することがあります。

たとえば、ユーザーがすぐにフィードバックを必要とする場合にデバイスに書き込むときは、 AutoFlushtrue に設定します。 Console.Out がその例です。 Console への書き込みのために内部で使用される StreamWriter は、 StreamWriter.Write が呼び出されるたびにエンコーダの状態以外のすべての内部状態をフラッシュします。

このプロパティの使用例については、以下の「使用例」を参照してください。その他の一般的な I/O タスクまたは関連する I/O タスクの例を次の表に示します。

実行するタスク 参考例があるトピック
テキスト ファイルを作成する。 ファイルへのテキストの書き込み
テキスト ファイルに書き込む。 ファイルへのテキストの書き込み
テキスト ファイルから読み取る。 ファイルからのテキストの読み取り

使用例

[Visual Basic, C#, C++] AutoFlush プロパティを使用するための構文の例を次に示します。

 
' Gets or sets a value indicating whether the StreamWriter
' will flush its buffer to the underlying stream after every 
' call to StreamWriter.Write.
Sw.AutoFlush = True

[C#] 
// Gets or sets a value indicating whether the StreamWriter
// will flush its buffer to the underlying stream after every 
// call to StreamWriter.Write.
sw.AutoFlush = true;                             

[C++] 
// Gets or sets a value indicating whether the StreamWriter
// will flush its buffer to the underlying stream after every 
// call to StreamWriter.Write.
sw->AutoFlush = true;                             

[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

参照

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