繁体   English   中英

System.ArgumentException:“参数无效”内存流到图像

[英]System.ArgumentException: "Parameter is not Valid" Memorystream to Image

我已经检查了其他 StackOverflow 问题,但似乎没有帮助,因为它们中的大多数都使用“base64string”,这对我没有帮助,因为我的 byte[] 是用 Windows-1252 编码的。

我的问题:

我正在使用条形码扫描仪制作图片,我使用Encoding.GetEncoding("Windows-1252").GetString(e.Buffer)) e 是DataaReceivedEventArgs ,它给了我一个DataaReceivedEventArgs

我必须将其转换为字符串,因为我必须从响应中删除一些部分,这一步必须保留。

然后我使用Encoding.GetEncoding("Windows-1252").GetBytes(response)将其转换为 ByteArray。

然后我只制作一个MemoryStream并在Image.FromStream(ms)使用它。 问题是它工作在第一时间没有任何问题。 但是在第二次之后它给了我无效的参数异常。

  byte[] bBytes = await responseZuBytesArray();

            using (MemoryStream ms = new MemoryStream(bBytes))
            {
                pcbBildAnzeige.SizeMode = PictureBoxSizeMode.StretchImage;
                pcbBildAnzeige.Image = Image.FromStream(ms);
            }

            tIsStarted = false;

我尝试设置 MemoryStream 的位置,尝试先将其转换为位图。 我已经尝试了很多,但我认为有一些简单的事情我只是没有看到这就是我在这里问的原因

尝试使用类System.Drawing.ImageConverter转换字节数组;

Bitmap bitmap = (Bitmap)new System.Drawing.ImageConverter().ConvertFrom(bBytes);

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM