首页 >后端开发 >C++ >如何将 Base64 字符串转换为图像并保存?

如何将 Base64 字符串转换为图像并保存?

Barbara Streisand
Barbara Streisand原创
2025-01-05 16:49:08836浏览

How to Convert a Base64 String to an Image and Save It?

将 Base64 字符串转换为图像并保存

使用 Base64 编码的图像时,将它们转换为图像可能具有挑战性实际图像文件。为了解决这个问题,让我们探索一个修改后的代码片段,它可以有效地将 Base64 字符串转换为图像并将其保存以进行存储:

protected void SaveMyImage_Click(object sender, EventArgs e)
{
    string imageUrl = Hidden1.Value;
    string saveLocation = Server.MapPath("~/PictureUploads/whatever2.png");

    HttpWebRequest imageRequest = (HttpWebRequest)WebRequest.Create(imageUrl);
    WebResponse imageResponse = imageRequest.GetResponse();

    Stream responseStream = imageResponse.GetResponseStream();
    byte[] imageBytes;

    using (var br = new BinaryReader(responseStream))
    {
        var imageString = br.ReadString();
        imageBytes = Convert.FromBase64String(imageString);
    }

    responseStream.Close();
    imageResponse.Close();

    Image image = Image.FromStream(new MemoryStream(imageBytes));

    FileStream fs = new FileStream(saveLocation, FileMode.Create);
    image.Save(fs, ImageFormat.Png);
    fs.Close();
}

在此修改后的代码中:

  1. Base64 Conversion:我们使用以下命令从响应流中提取 Base64 字符串br.ReadString().
  2. Image 对象创建:我们将 Base64 字符串转换为字节数组,然后用于创建 Image 对象。
  3. 图像保存:我们不将原始字节写入文件,而是使用 image.Save() 将图像对象直接保存到所需位置。这可确保图像以指定格式保存(本例中为 PNG)。

以上是如何将 Base64 字符串转换为图像并保存?的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn