Konvertieren einer Base64-codierten Bildzeichenfolge in ein Bild
Ihr bereitgestellter ASP.NET-Codeausschnitt versucht, ein Bild von einer URL zu speichern. Es ist jedoch ein Problem aufgetreten, da es sich bei der bereitgestellten URL um eine Base64-codierte Zeichenfolge und nicht um eine direkte Bild-URL handelt.
Um dieses Problem zu beheben, müssen Sie die Base64-Zeichenfolge in Binärdaten dekodieren und dann ein Bildobjekt erstellen aus den Binärdaten. Hier ist ein Beispiel, wie Sie Ihren Code ändern können:
protected void SaveMyImage_Click(object sender, EventArgs e) { // Get the Base64 encoded image string from the hidden input field string base64ImageString = Hidden1.Value; // Convert the Base64 string to binary data byte[] imageBytes = Convert.FromBase64String(base64ImageString); // Create a memory stream from the binary data using (MemoryStream ms = new MemoryStream(imageBytes)) { // Create an Image object from the memory stream Image image = Image.FromStream(ms); // Save the image to the specified location string saveLocation = Server.MapPath("~/PictureUploads/whatever2.png"); image.Save(saveLocation); } }
Zusätzliche Hinweise zur Behandlung von Bitmap-Ausnahmen
Wenn Sie auf die Meldung „In GDI ist ein allgemeiner Fehler aufgetreten“ stoßen Ausnahme beim Versuch, die Base64-Zeichenfolge zu dekodieren, kann dies daran liegen, dass die Bytes ein Bitmap-Bild darstellen. Um dieses Problem zu beheben, speichern Sie das Bild, bevor Sie den Speicherstream entsorgen:
// Create a memory stream from the binary data using (MemoryStream ms = new MemoryStream(imageBytes)) { // Save the image to the memory stream image.Save(ms, System.Drawing.Imaging.ImageFormat.Png); // Replace "Png" with the appropriate image format // Create an Image object from the memory stream image = Image.FromStream(ms); // Dispose the memory stream ms.Dispose(); }
Das obige ist der detaillierte Inhalt vonWie konvertiere ich eine Base64-codierte Bildzeichenfolge in ein Bild in ASP.NET?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!