我正在开发一个需要从 Base64 编码字符串写入 .png 图像文件的应用程序。为了做到这一点,我有以下代码:
byte[] tempBytes = Convert.FromBase64String(base64EncodedString);
using (MemoryStream memoryStream = new MemoryStream(tempBytes))
{
System.Drawing.Image image = System.Drawing.Image.FromStream(memoryStream);
image.Save("C:\\inetpub\\wwwroot\\MySite\\test.png");
}
执行此代码时,我收到以下错误:
System.ArgumentException Parameter is not valid.
堆栈跟踪的相关部分如下所示:
at System.Drawing.Image.FromStream(Stream stream, Boolean useEmbeddedColorManagement, Boolean validateImageData)
据我了解,这意味着我的 base64encodedString 不是有效图像。但是,我不知道如何确定原因可能是什么。上面的代码在服务器上运行。我正在从我也编写的客户端应用程序传递编码字符串。我已经在客户端和服务器端打印了编码字符串以确保它们匹配。考虑到这两个匹配,这意味着我没有正确编码字符串。我该如何追溯原因。
谢谢