Problem:
Ein empfangenes Byte-Array, das eine vollständige Datei darstellt, muss in eine Datei geschrieben werden. Die FileStream-Klasse akzeptiert jedoch kein Byte-Array oder ein anderes Stream-Objekt als Argument zum Schreiben.
Lösung:
Die einfachste Methode zum Schreiben eines darstellenden Byte-Arrays Um eine vollständige Datei in eine Datei in C# umzuwandeln, verwenden Sie die Methode File.WriteAllBytes. Diese Methode verwendet einen Dateipfad und ein Byte-Array als Parameter und schreibt den Inhalt des Byte-Arrays in die angegebene Datei.
File.WriteAllBytes("path/to/file.ext", byte_array);
Implementierung:
Um diese Lösung zu implementieren, können Sie die Empfangs- und Verarbeitungsaufgaben in verschiedene Threads aufteilen. Der empfangende Thread kann den Stream vom Client lesen und in einem Byte-Array speichern. Sobald das Byte-Array vollständig ist, kann es zur Verarbeitung an einen separaten Thread übergeben werden.
Der Verarbeitungsthread kann dann die Methode File.WriteAllBytes verwenden, um das Byte-Array in eine Datei zu schreiben:
// In a separate thread File.WriteAllBytes("path/to/file.ext", received_byte_array);
Dieser Ansatz ermöglicht es dem empfangenden Thread, weiterhin Streams vom Client zu empfangen, während der verarbeitende Thread das Schreiben der Dateien auf die Festplatte übernimmt.
Das obige ist der detaillierte Inhalt vonWie schreibe ich ein Byte-Array in eine Datei in C#?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!