Feedback

C# - Image in string wandeln und zurück

Veröffentlicht von am 01.12.2008
(1 Bewertungen)
Diese Snippets wandeln:
a) ein Image unter Angabe des ImageFormat in einen Base64String
b) einen Base64String wieder zurück in ein Image

Diese Methoden können z.B. bei der Serialisierung in eine XML Datei verwendet werden um Thumbs abzulegen.
GFU-Schulungen  [Anzeige]

ASP.NET Core und Angular Komplett für .NET-Entwickler

Sie  lernen in drei (3) Tagen wie man mit  ASP.NET Core und den Technologien  MVC, Entity Framework, WebAPI und  Razor professionelle sowie moderne  Web-Anwendungsarchitekturen aufbaut.  Die Schulung ist der perfekte  Einstieg um insbesondere datengetriebene  und präsentationsorientierte  Applikationen auf Basis der robusten und  skalierbaren ASP.NET Core  Plattform zu erstellen. Nach der Veranstaltung kennen Sie die Konzepte von Angular und können Angular in neue und bestehende ASP.NET-Anwendungen einsetzen.

C# Aufbaukurs

Sie haben grundlegende .NET- und C#-Kenntnisse und und wollen diese nun erweitern. Der Aufbaukurs C# führt Sie ein die Arbeit mit Interfaces und Delegates, Generics und Parallel Computing.

public string ImageToBase64String( Image image, ImageFormat format )
{
   MemoryStream memory = new MemoryStream();
   image.Save( memory, format );
   string base64 = Convert.ToBase64String( memory.ToArray() );
   memory.Close();

   return base64;
}

public Image ImageFromBase64String( string base64 )
{
   MemoryStream memory = new MemoryStream( Convert.FromBase64String( base64 ) );
   Image result = Image.FromStream( memory );
   memory.Close();

   return result;
}
Abgelegt unter Image, Bitmap, Serialisieren, string, Base64String.

1 Kommentare zum Snippet

Günther Foidl schrieb am 02.12.2008:
Die Ressourcen des MemoryStreams werden nicht freigegeben (Dispose).
Dazu empfiehlt sich die Verwendung von

using (MemoryStream memory = new MemoryStream())
{
image.Save(memory, format);
string base64 = Convert.ToBase64String(memory.ToArray());
}

Das Close und Dispose wird dann automatisch erledigt - auch im Falle eines Fehlers.
 

Logge dich ein, um hier zu kommentieren!