Heim > Backend-Entwicklung > C++ > Wie kann ich eine Bitmap in C# effizient in ein Byte-Array konvertieren?

Wie kann ich eine Bitmap in C# effizient in ein Byte-Array konvertieren?

Linda Hamilton
Freigeben: 2025-01-23 14:57:13
Original
899 Leute haben es durchsucht

How Can I Efficiently Convert a Bitmap to a Byte Array in C#?

Effiziente Bitmap-zu-Byte-Array-Konvertierung in C#

Das Speichern einer Windows-Bitmap in einer temporären Datei und das anschließende Lesen als Byte-Array ist eine gängige Konvertierungsmethode, die jedoch nicht effizient ist. Hier sind zwei Alternativen in C#, die eine bessere Leistung bieten.

ImageConverter verwenden

Die ImageConverter-Klasse bietet eine praktische Möglichkeit, ein Bild in ein Byte-Array zu konvertieren:

public static byte[] ImageToByte(Image img)
{
    ImageConverter converter = new ImageConverter();
    return (byte[])converter.ConvertTo(img, typeof(byte[]));
}
Nach dem Login kopieren

Diese Methode erfordert keine umfangreiche Codierung und ist ideal für kleinere Konvertierungsaufgaben.

MemoryStream verwenden

Mit der MemoryStream-Klasse können Sie Bilder im Speicher statt auf der Festplatte speichern:

public static byte[] ImageToByte2(Image img)
{
    using (var stream = new MemoryStream())
    {
        img.Save(stream, System.Drawing.Imaging.ImageFormat.Png);
        return stream.ToArray();
    }
}
Nach dem Login kopieren

Zusätzliche Vorteile dieser Methode sind die Wahl des Bildformats und die Möglichkeit, die Daten auf der Festplatte zu speichern oder im Speicher zu behalten.

Diese Alternativen bieten effiziente und flexible Lösungen zum Konvertieren von Bitmaps in Byte-Arrays, reduzieren unnötige Festplattenvorgänge und verbessern die Leistung.

Das obige ist der detaillierte Inhalt vonWie kann ich eine Bitmap in C# effizient in ein Byte-Array konvertieren?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage