Dans votre scénario, vous souhaitez convertir une chaîne d'image codée en Base64 en une image et l'enregistrer à l'aide du code C#. Vous avez fourni votre extrait de code actuel, mais il est configuré pour gérer les URL d'images classiques telles que "www.mysite.com/test.jpg" plutôt que les chaînes Base64.
Pour résoudre ce problème, voici une approche alternative qui permet vous de décoder et d'enregistrer les images Base64 :
public Image LoadImage(string base64Image) { // Convert the Base64 string to a byte array byte[] bytes = Convert.FromBase64String(base64Image); Image image; using (MemoryStream ms = new MemoryStream(bytes)) { // Decode the image from the memory stream and store it in the Image object image = Image.FromStream(ms); } return image; } protected void SaveMyImage_Click(object sender, EventArgs e) { // Retrieve the Base64 image string from your input string base64Image = Hidden1.Value; // Generate an Image object from the Base64 string Image image = LoadImage(base64Image); // Specify the desired file path and name string saveLocation = Server.MapPath("~/PictureUploads/my_image.png"); // Save the decoded image image.Save(saveLocation); }
Ici, la méthode LoadImage prend une chaîne d'image codée en Base64 en entrée, la convertit à un tableau d'octets et le décode en un objet Image. Le gestionnaire d'événements SaveMyImage_Click appelle ensuite la méthode LoadImage pour générer l'objet Image et l'enregistrer à l'emplacement spécifié.
Notez que ce code suppose que la chaîne Base64 représente un format d'image valide. Si la chaîne est mal formée ou invalide, une exception peut être levée.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!