Hvordan konverterer jeg struct System.Byte byte[] til et System.IO.Stream-objekt i C#?

Hvordan konverterer jeg struct System.Byte byte[] til et System.IO.Stream-objekt i C#?

Du leter etter MemoryStream.Write-metoden. For eksempel vil følgende kode skrive innholdet i en byte[]-array til en minnestrøm:

byte[] myByteArray = new byte[10];
MemoryStream stream = new MemoryStream();
stream.Write(myByteArray, 0, myByteArray.Length);

Alternativt kan du opprette et nytt, ikke-størrelsesjusterbart MemoryStream-objekt basert på byte-matrisen:

byte[] myByteArray = new byte[10];
MemoryStream stream = new MemoryStream(myByteArray);
Kommentarer (5)

Den generelle tilnærmingen for å skrive til en hvilken som helst strøm (ikke bare MemoryStream) er å bruke BinaryWriter:

static void Write(Stream s, Byte[] bytes)
{
    using (var writer = new BinaryWriter(s))
    {
        writer.Write(bytes);
    }
}
Kommentarer (0)