Rumah >pembangunan bahagian belakang >C++ >Bagaimana untuk Menukar Rentetan Imej Berkod Base64 kepada Imej dalam ASP.NET?
Menukar Rentetan Imej Berkod Base64 kepada Imej
Coretan kod ASP.NET yang anda berikan cuba menyimpan imej daripada URL. Walau bagaimanapun, anda telah menghadapi masalah kerana URL yang disediakan ialah rentetan berkod Base64, bukan URL imej langsung.
Untuk menyelesaikan masalah ini, anda perlu menyahkod rentetan Base64 ke dalam data binari dan kemudian mencipta objek Imej daripada data binari. Berikut ialah contoh cara anda boleh mengubah suai kod anda:
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); } }
Nota Tambahan untuk Mengendalikan Pengecualian Peta Bit
Jika anda menghadapi "Ralat generik berlaku dalam GDI " pengecualian apabila cuba menyahkod rentetan Base64, ini mungkin kerana bait mewakili imej peta bit. Untuk menyelesaikan masalah ini, simpan imej sebelum melupuskan aliran memori:
// 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(); }
Atas ialah kandungan terperinci Bagaimana untuk Menukar Rentetan Imej Berkod Base64 kepada Imej dalam ASP.NET?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!