FileStream.Write 方法

使用从缓冲区读取的数据将字节块写入该流。

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

语法

声明
Public Overrides Sub Write ( _
    array As Byte(), _
    offset As Integer, _
    count As Integer _
)
用法
Dim instance As FileStream
Dim array As Byte()
Dim offset As Integer
Dim count As Integer

instance.Write(array, offset, count)
public override void Write (
    byte[] array,
    int offset,
    int count
)
public:
virtual void Write (
    array<unsigned char>^ array, 
    int offset, 
    int count
) override
public void Write (
    byte[] array, 
    int offset, 
    int count
)
public override function Write (
    array : byte[], 
    offset : int, 
    count : int
)

参数

  • array
    包含要写入该流的数据的缓冲区。
  • offset
    array 中的从零开始的字节偏移量,从此处开始将字节复制到当前流。
  • count
    要写入当前流的最大字节数。

异常

异常类型 条件

ArgumentNullException

array 为 空引用(在 Visual Basic 中为 Nothing)。

ArgumentException

offset 和 count 描述 array 中的无效范围。

ArgumentOutOfRangeException

offset 或 count 为负。

IOException

发生 I/O 错误。

- 或 -

另一个线程可能已导致操作系统的文件句柄位置发生意外更改。

ObjectDisposedException

流已关闭。

NotSupportedException

当前流实例不支持写入。

备注

此方法重写 Write

offset 参数提供 array 中开始复制的位置的字节偏移量(缓冲区索引),而 count 参数提供将要写入该流的最大字节数。如果写操作成功,则流的当前位置前进写入的字节数。如果发生异常,则流的当前位置不变。

提示

使用 CanWrite 属性可确定当前实例是否支持写入。有关更多信息,请参见 CanWrite

下表列出了其他典型或相关的 I/O 任务的示例。

若要执行此操作...

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

创建文本文件。

如何:向文件写入文本

写入文本文件。

如何:向文件写入文本

读取文本文件。

如何:从文件读取文本

向文件中追加文本。

如何:打开并追加到日志文件

File.AppendText

FileInfo.AppendText

重命名或移动文件。

File.Move

FileInfo.MoveTo

复制文件。

File.Copy

FileInfo.CopyTo

获取文件大小。

FileInfo.Length

获取文件属性。

File.GetAttributes

设置文件属性。

File.SetAttributes

确定文件是否存在。

File.Exists

读取二进制文件。

如何:对新建的数据文件进行读取和写入

写入二进制文件。

如何:对新建的数据文件进行读取和写入

创建目录。

Directory.CreateDirectory

Directory.CreateDirectory

示例

此代码示例是为 Lock 方法提供的一个更大示例的一部分。

' Write the original file data.
If aFileStream.Length = 0 Then
    tempString = _
        lastRecordText + recordNumber.ToString()
    aFileStream.Write(uniEncoding.GetBytes(tempString), _
        0, uniEncoding.GetByteCount(tempString))
End If
// Write the original file data.
if(fileStream.Length == 0)
{
    tempString = 
        lastRecordText + recordNumber.ToString();
    fileStream.Write(uniEncoding.GetBytes(tempString), 
        0, uniEncoding.GetByteCount(tempString));
}
// Write the original file data.
if ( fileStream->Length == 0 )
{
   tempString = String::Concat( lastRecordText, recordNumber.ToString() );
   fileStream->Write( uniEncoding->GetBytes( tempString ), 0, uniEncoding->GetByteCount( tempString ) );
}
// Write the original file data.
if ( fileStream.get_Length() == 0  ) {
    tempString = lastRecordText +(
        new Integer( recordNumber)).ToString();
    fileStream.Write(uniEncoding.GetBytes(tempString),
        0, uniEncoding.GetByteCount(tempString));
}

平台

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

请参见

参考

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

其他资源

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