Image.FromStream( MemoryStream object )


using (MemoryStream mem = new MemoryStream(data))
{
 System.Drawing.Image imgPhoto = System.Drawing.Image.FromStream(mem);
}

这是我正在使用的代码。问题是一旦调试器处理此行:

System.Drawing.Image imgPhoto = System.Drawing.Image.FromStream(mem);

它给出一个错误参数无效。所以在我检查了"mem"的参数之后在调试时,我注意到位置参数每次都设置为零。

我在这里注意到了一件事:当我从以 url 开头的来源接收图像时:external.xx.fbcdnsafe ...位置参数未设置为某个值,并且始终设置为零,这就是我收到错误的时间。请参考屏幕截图。

但是对于以URL开头的图像:scontent.xx.fbcdn.n...位置参数正在设置某个值。请参考截图。

对于外部来源:以 external.xx.fbcdn.net 开头的网址 对于内容来源:以 scontent.xx.fbcdn.net 开头的网址

当流的格式无法识别为图像时,您会收到"参数无效"异常。看

"参数无效"异常加载系统.绘图.图像

检查您从scontent.xx.fbcdn.n接收的数据内容... 网址。也许它们是 404 错误或其他一些内容,而不是有效的图像数据。

最新更新