FileStream.Write 方法  
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
重载
| Write(ReadOnlySpan<Byte>) | 将字节的序列从只读范围写入当前文件流,并按写入的字节数向前移动此文件流中的当前位置。 | 
| Write(Byte[], Int32, Int32) | 将字节块写入文件流。 | 
Write(ReadOnlySpan<Byte>)
- Source:
- FileStream.cs
- Source:
- FileStream.cs
- Source:
- FileStream.cs
将字节的序列从只读范围写入当前文件流,并按写入的字节数向前移动此文件流中的当前位置。
public:
 override void Write(ReadOnlySpan<System::Byte> buffer);public override void Write (ReadOnlySpan<byte> buffer);override this.Write : ReadOnlySpan<byte> -> unitPublic Overrides Sub Write (buffer As ReadOnlySpan(Of Byte))参数
- buffer
- ReadOnlySpan<Byte>
内存的区域。 此方法将此区域的内容复制到当前文件流。
例外
.NET 8 及更高版本:基础管道已关闭或断开连接。
注解
CanWrite使用 属性确定当前实例是否支持写入。 WriteAsync使用 方法以异步方式写入当前流。
如果写入操作成功,则文件流中的位置将按写入的字节数前进。 如果发生异常,则文件流中的位置保持不变。
适用于
Write(Byte[], Int32, Int32)
- Source:
- FileStream.cs
- Source:
- FileStream.cs
- Source:
- FileStream.cs
将字节块写入文件流。
public:
 override void Write(cli::array <System::Byte> ^ array, int offset, int count);public:
 override void Write(cli::array <System::Byte> ^ buffer, int offset, int count);public override void Write (byte[] array, int offset, int count);public override void Write (byte[] buffer, int offset, int count);override this.Write : byte[] * int * int -> unitoverride this.Write : byte[] * int * int -> unitPublic Overrides Sub Write (array As Byte(), offset As Integer, count As Integer)Public Overrides Sub Write (buffer As Byte(), offset As Integer, count As Integer)参数
- arraybuffer
- Byte[]
包含要写入该流的数据的缓冲区。
- offset
- Int32
              array 中的从零开始的字节偏移量,从此处开始将字节复制到该流。
- count
- Int32
最多写入的字节数。
例外
              array 为 null。
              offset 和 count 描述 array中的无效范围。
              offset 或 count 为负数。
流已关闭。
当前的流实例不支持写入。
示例
此代码示例是为 方法提供的更大示例的 Lock 一部分。
// 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.Length == 0)
{
    tempString =
        lastRecordText + recordNumber.ToString();
    fileStream.Write(uniEncoding.GetBytes(tempString),
        0, uniEncoding.GetByteCount(tempString));
}
// Write the original file data.
if fileStream.Length = 0 then
    let tempString = lastRecordText + string recordNumber
    fileStream.Write(uniEncoding.GetBytes tempString, 0, uniEncoding.GetByteCount tempString)
' 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。
              offset参数提供 (缓冲区索引) 开始复制的字节array的偏移量,参数count提供将写入流的字节数。 如果写入操作成功,则流的当前位置将比写入的字节数提前。 如果发生异常,流的当前位置保持不变。
不要中断正在执行写入操作的线程。 尽管在取消阻止线程后,应用程序似乎可以成功运行,但中断可能会降低应用程序的性能和可靠性。
有关常见文件和目录操作的列表,请参阅 常见 I/O 任务。