如何在智能设备应用程序(C#)中将object []转换为图像?

时间:2010-03-03 06:41:50

标签: c# casting smartphone

我正在用C#开发智能设备应用程序。我正在调用Web服务。 Web服务方法返回Google地图。方法的返回类型是object []。 object []包含字节格式的图像。 Google地图图片的soap响应为xsi:type =“xs:base64Binary”。在对象中我没有得到字符串。在对象中我得到字节数组。 所以我在以下变量中捕获了web服务的响应。

object [] GoogleMap;

调试后我可以看到在auto中我得到的结果如下。

名称:价值: GoogleMap {object [1]} [0] {byte [23570]}

我需要在我的应用程序中显示实际图像。我需要做什么类型的转换来显示图像。请确保.net框架的所有核心功能都不能与.net紧凑框架一起使用。您能否提供我可以解决上述问题的代码或链接?

1 个答案:

答案 0 :(得分:1)

首先,您需要输出字节数组:

byte[] data = (byte[]) objects[0];

然后围绕它创建一个MemoryStream

MemoryStream stream = new MemoryStream(data);

现在从流中创建Bitmap

Bitmap bitmap = new Bitmap(stream);

请注意,当您处置MemoryStream时,关闭Image,这将关闭流。

(编辑:从Image.FromStream更改为调用Bitmap构造函数,因为Image.FromStream似乎不在CF中。)