Konvertieren Sie ein Bild in einen Base64-String in C#

Saad Aslam 12 Oktober 2023
Konvertieren Sie ein Bild in einen Base64-String in C#

In diesem Artikel wird veranschaulicht, wie Sie ein Bild mit C# in eine Base64-Zeichenfolge konvertieren.

Die Codierung in base64 ist eine Technik, die häufig verwendet wird, wenn Binärdaten in eine Textdarstellung umgewandelt werden müssen. Zahlreiche Anwendungen, wie das Versenden einer E-Mail mit MIME und das Speichern komplizierter Daten in XML, verwenden häufig den base64-Codierungsstandard.

Konvertieren Sie ein Bild in einen Base64-String in C#

Importieren Sie zunächst die Bibliotheken, um auf die Klassen und Funktionen im Programm zuzugreifen.

using System;

Erstellen Sie eine Klasse ImagetoBase64 und erstellen Sie eine Main()-Methode innerhalb dieser Klasse.

class ImagetoBase64 {
  public static void Main() {}
}

Erstellen Sie innerhalb der Funktion Main() eine Variable imageArray vom Typ Byte-Array mit der Bezeichnung byte[], die das ausgewählte Bild mithilfe der Funktion ReadAllBytes() in ein Byte-Array konvertiert.

byte[] imageArray = System.IO.File.ReadAllBytes("E://image.jpg");

Erstellen Sie eine neue Variable namens base64Image vom Typ String. Diese Variable konvertiert die Bytes des Bildes mithilfe der Funktion ToBase64String(). der Klasse Convert in base64.

Diese Funktion nimmt einen Teil eines Arrays von 8-Bit-Ganzzahlen ohne Vorzeichen und generiert daraus eine Zeichenfolgendarstellung, die mit Base-64-Ziffern codiert ist.

Mit den Parametern kann der Benutzer die Teilmenge als Offset innerhalb des Eingabe-Arrays und die Anzahl der zu konvertierenden Array-Elemente definieren. Es ermöglicht auch zu bestimmen, ob die Zeilenumbrüche in das Rückgabeergebnis eingeschlossen werden sollen oder nicht.

string base64Image = Convert.ToBase64String(imageArray);

Am Ende muss nur noch das Bild angezeigt werden, nachdem es in Base64-Text umgewandelt wurde.

Console.WriteLine("Base 64 string\n\n" + base64Image);

Vollständiger Quellcode:

using System;

class ImagetoBase64 {
  public static void Main() {
    byte[] imageArray = System.IO.File.ReadAllBytes("E://image.jpg");
    string base64Image = Convert.ToBase64String(imageArray);

    Console.WriteLine("Base 64 string\n\n" + base64Image);
  }
}

Da base64 ziemlich lang ist, fügen wir ein paar ... ein, um zu verdeutlichen, dass es so weitergeht.

Ausgang:

/9j/4AAQSkZJRgABAQEASABIAAD/4gxYSUNDX1BST0ZJTEUAAQEAAAxITGlubwIQAABtbnRyUkdCIFhZWiAHzgACAAkABgAxAABhY3NwTVNGVAAAAABJRUMgc1JHQgAAAAAAAAAAAAAAAAAA9tYAAQAAAADTLUhQICAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABFjcHJ0AAABUAAAADNkZXNjAAABhAAAAGx3dHB0AAAB8AAAABRia3B0AAACBAAAABRyWFlaAAACGAAAABRnWFlaAAACLAAAABRiWFlaAAACQAAAABRkbW5kAAACVAAAAHBkbWRkAAACxAAAAIh2dWVkAAADTAAAAIZ2aWV3AAAD1AAAACRsdW1pAAAD......
Autor: Saad Aslam
Saad Aslam avatar Saad Aslam avatar

I'm a Flutter application developer with 1 year of professional experience in the field. I've created applications for both, android and iOS using AWS and Firebase, as the backend. I've written articles relating to the theoretical and problem-solving aspects of C, C++, and C#. I'm currently enrolled in an undergraduate program for Information Technology.

LinkedIn

Verwandter Artikel - Csharp Image