StreamWriter.AutoFlush 属性

获取或设置一个值,该值指示 StreamWriter 是否在每次调用 StreamWriter.Write 之后,将其缓冲区刷新到基础流。

**命名空间:**System.IO
**程序集:**mscorlib(在 mscorlib.dll 中)

语法

声明
Public Overridable Property AutoFlush As Boolean
用法
Dim instance As StreamWriter
Dim value As Boolean

value = instance.AutoFlush

instance.AutoFlush = value
public virtual bool AutoFlush { get; set; }
public:
virtual property bool AutoFlush {
    bool get ();
    void set (bool value);
}
/** @property */
public boolean get_AutoFlush ()

/** @property */
public void set_AutoFlush (boolean value)
public function get AutoFlush () : boolean

public function set AutoFlush (value : boolean)

属性值

强制 StreamWriter 刷新其缓冲区时,为 true;否则,为 false

备注

除非显式地调用 FlushClose,否则,刷新流不会刷新其基础编码器。将 AutoFlush 设置为 true 意味着将数据从缓冲区刷新到流中,但不刷新编码器状态。这将允许编码器保持其状态(不完全字符),以便它可以正确地对下一个字符块进行编码。此方案影响 UTF8 和 UTF7,这二者中,某些字符只能在编码器收到相邻的一个或多个字符后才能进行编码。

AutoFlush 设置为 false 时,StreamWriter 将从传递进的编码做限量缓冲,这种缓冲以内部方式和潜在方式在编码器中进行。假设在使用 StreamWriter 写入时始终调用 Close(或者至少 Flush),那么将 AutoFlush 设置为 false 可能会获得更好的性能。

例如,如果用户期望您所写入的设备能够立即反馈,则将 AutoFlush 设置为 trueConsole.Out 即属于这种情况:内部用于向 Console 写入的 StreamWriter 在您每次调用 StreamWriter.Write 后,都刷新其所有的内部状态,编码器状态除外。

有关使用此属性的示例,请参阅下面的“示例”部分。下表列出了其他典型或相关的 I/O 任务的示例。

若要执行此操作...

请参见本主题中的示例...

创建文本文件。

如何:向文件写入文本

写入文本文件。

如何:向文件写入文本

读取文本文件。

如何:从文件读取文本

示例

下面的示例显示了使用 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
// 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;                             
// 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;
// Gets or sets a value indicating whether the StreamWriter
// will flush its buffer to the underlying stream after every 
// call to StreamWriter.Write.
sw.set_AutoFlush(true);

平台

Windows 98、Windows 2000 SP4、Windows CE、Windows Millennium Edition、Windows Mobile for Pocket PC、Windows Mobile for Smartphone、Windows Server 2003、Windows XP Media Center Edition、Windows XP Professional x64 Edition、Windows XP SP2、Windows XP Starter Edition

.NET Framework 并不是对每个平台的所有版本都提供支持。有关受支持版本的列表,请参见系统要求

版本信息

.NET Framework

受以下版本支持:2.0、1.1、1.0

.NET Compact Framework

受以下版本支持:2.0、1.0

请参见

参考

StreamWriter 类
StreamWriter 成员
System.IO 命名空间

其他资源

文件和流 I/O
如何:从文件读取文本
如何:向文件写入文本