尝试将 base64 字符串转换为字节数组时出现异常。我将图像转换为字节数组,然后转换为 base64 字符串,然后对其进行加密并将其存储在文件中。然后我尝试将 base64 字符串转换回 MemoryStream 中的字节数组,并重新创建图像。我在这里得到一个 FormatException:
byte[] imgBytes = Convert.FromBase64String(str);
这是两个主要功能的完整代码:
public string ImageToString(Image img)
{
using (MemoryStream ms = new MemoryStream())
{
img.Save(ms, ImageFormat.Jpeg);
return Convert.ToBase64String(ms.ToArray());
}
}
public Image StringToImage(String str)
{
int lent = str.Length;
byte[] imgBytes = Convert.FromBase64String(str);
MemoryStream ms = new MemoryStream(imgBytes, 0, imgBytes.Length);
ms.Write(imgBytes, 0, imgBytes.Length);
return Image.FromStream(ms, true);
}
这是我要转换的base64字符串的开头和结尾......
G>/9j/4AAQSkZJRgABAQEAYABgAAD .... Uh+8fxpT/B9KAP/2Q==
任何想法都非常感谢!