FileStream.Write Methode
Definition
Wichtig
Einige Informationen beziehen sich auf Vorabversionen, die vor dem Release ggf. grundlegend überarbeitet werden. Microsoft übernimmt hinsichtlich der hier bereitgestellten Informationen keine Gewährleistungen, seien sie ausdrücklich oder konkludent.
Überlädt
| Name | Beschreibung |
|---|---|
| Write(ReadOnlySpan<Byte>) |
Schreibt eine Abfolge von Bytes aus einer schreibgeschützten Spanne in den aktuellen Dateidatenstrom und wechselt die aktuelle Position innerhalb dieses Dateidatenstroms um die Anzahl der geschriebenen Bytes. |
| Write(Byte[], Int32, Int32) |
Schreibt einen Byteblock in den Dateidatenstrom. |
Write(ReadOnlySpan<Byte>)
- Quelle:
- FileStream.cs
- Quelle:
- FileStream.cs
- Quelle:
- FileStream.cs
- Quelle:
- FileStream.cs
- Quelle:
- FileStream.cs
Schreibt eine Abfolge von Bytes aus einer schreibgeschützten Spanne in den aktuellen Dateidatenstrom und wechselt die aktuelle Position innerhalb dieses Dateidatenstroms um die Anzahl der geschriebenen Bytes.
public:
override void Write(ReadOnlySpan<System::Byte> buffer);
public override void Write(ReadOnlySpan<byte> buffer);
override this.Write : ReadOnlySpan<byte> -> unit
Public Overrides Sub Write (buffer As ReadOnlySpan(Of Byte))
Parameter
- buffer
- ReadOnlySpan<Byte>
Ein Speicherbereich. Diese Methode kopiert den Inhalt dieses Bereichs in den aktuellen Dateidatenstrom.
Ausnahmen
.NET 8 und höhere Versionen: Die zugrunde liegende Pipe wird geschlossen oder getrennt.
Hinweise
Verwenden Sie die CanWrite Eigenschaft, um zu bestimmen, ob die aktuelle Instanz das Schreiben unterstützt. Verwenden Sie die WriteAsync Methode, um asynchron in den aktuellen Datenstrom zu schreiben.
Wenn der Schreibvorgang erfolgreich ist, wechselt die Position innerhalb des Dateidatenstroms um die Anzahl der geschriebenen Bytes. Wenn eine Ausnahme auftritt, bleibt die Position innerhalb des Dateidatenstroms unverändert.
Gilt für:
Write(Byte[], Int32, Int32)
- Quelle:
- FileStream.cs
- Quelle:
- FileStream.cs
- Quelle:
- FileStream.cs
- Quelle:
- FileStream.cs
- Quelle:
- FileStream.cs
Schreibt einen Byteblock in den Dateidatenstrom.
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 -> unit
override this.Write : byte[] * int * int -> unit
Public 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)
Parameter
- arraybuffer
- Byte[]
Der Puffer, der Daten enthält, die in den Datenstrom geschrieben werden sollen.
- offset
- Int32
Der nullbasierte Byte-Offset array , aus dem mit dem Kopieren von Bytes in den Datenstrom begonnen werden soll.
- count
- Int32
Die maximale Anzahl von Bytes, die geschrieben werden sollen.
Ausnahmen
array ist null.
offset und count einen ungültigen Bereich in array.
offset oder count ist negativ.
Ein E/A-Fehler ist aufgetreten.
- oder -
Ein anderer Thread hat möglicherweise zu einer unerwarteten Änderung der Position des Dateihandle des Betriebssystems geführt.
- oder -
.NET 8 und höhere Versionen: Die zugrunde liegende Pipe wird geschlossen oder getrennt.
Der Datenstrom wird geschlossen.
Die aktuelle Streaminstanz unterstützt das Schreiben nicht.
Beispiele
Dieses Codebeispiel ist Teil eines größeren Beispiels, das für die Lock Methode bereitgestellt wird.
// 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
Hinweise
Diese Methode überschreibt Write.
Der offset Parameter gibt den Offset des Byte in array (der Pufferindex) an, an dem mit dem Kopieren begonnen werden soll, und der count Parameter gibt die Anzahl der Bytes an, die in den Datenstrom geschrieben werden. Wenn der Schreibvorgang erfolgreich ist, wird die aktuelle Position des Datenstroms um die Anzahl der geschriebenen Bytes erweitert. Wenn eine Ausnahme auftritt, ist die aktuelle Position des Datenstroms unverändert.
Hinweis
Verwenden Sie die CanWrite Eigenschaft, um zu bestimmen, ob die aktuelle Instanz das Schreiben unterstützt. Zusätzliche Informationen finden Sie unter CanWrite.
Unterbrechen Sie keinen Thread, der einen Schreibvorgang ausführt. Obwohl die Anwendung nach dem Entsperren des Threads möglicherweise erfolgreich ausgeführt wird, kann die Unterbrechung die Leistung und Zuverlässigkeit Ihrer Anwendung verringern.
Eine Liste allgemeiner Datei- und Verzeichnisvorgänge finden Sie unter "Allgemeine E/A-Aufgaben".
Weitere Informationen
- Datei- und Datenstrom-E/A
- Vorgehensweise: Lesen von Text aus einer Datei
- Vorgehensweise: Schreiben von Text in eine Datei