将base64字符串转换为图像

时间:2014-08-11 07:28:02

标签: c#

我正在尝试使用以下代码将base64字符串转换为图像

 byte[] imageBytes = Convert.FromBase64String(base64String);
 MemoryStream ms = new MemoryStream(imageBytes, 0, imageBytes.Length);

 // Convert byte[] to Image
 ms.Write(imageBytes, 0, imageBytes.Length);
 Image image = Image.FromStream(ms, true);

但总是给我一个错误“参数无效。”

而且我想在转换后将图像存储在文件夹中。

1 个答案:

答案 0 :(得分:1)

你不需要

ms.Write(imageBytes, 0, imageBytes.Length);

您的信息流可以使用:

MemoryStream ms = new MemoryStream(imageBytes)

这就是我所想的。

请记住为MemoryStream使用块

Image image;
using (var ms= new MemoryStream(Convert.FromBase64String(base64String)))
{
  image = Image.FromStream(ms, true);
}

要在FileSytem中存储您的Image,只需使用:

image.Save("c:\\myimage.bmp");