将映像从SQL Server数据库映像字段加载到UIImageView中

时间:2011-06-08 00:50:10

标签: iphone objective-c sql-server image ipad

我们在图像类型字段中存储在SQL Server数据库中的图像。我只是想知道如何在我的iPad应用程序中将它们放入UIImageView中。我的iPad应用程序通过OData服务提供程序与SQL Server通信,因此图像字段与NSData类型相遇,所以我尝试了以下代码:

UIImage *currentImage = [[UIImage alloc] initWithData:[currentEntityImage getEntityImageData]];
[myImageView setImage:currentImage];

其中“[currentEntityImage getEntityImageData]”是从图像字段转换的NSData字段。问题是我永远无法在UIImageView中显示任何内容。

以下是我在.net应用程序中使用的相应代码,它正确显示了图像:

Dim EntImage As EntityImage = CType(e.Entities.Item(0), EntityImage)
Dim ms As New System.IO.MemoryStream(EntImage.EntityImage)
Me.imgEntityImage.Image = System.Drawing.Image.FromStream(ms)

这样可以正常显示图像(我在两个平台上访问相同的数据)。

关于我的obj-c代码中缺少什么的任何想法?我整个早上一直把头发拉出来。

提前致谢

2 个答案:

答案 0 :(得分:0)

试试这个

NSData *imageData =[NSData dataWithData:[currentEntityImage getEntityImageData]];  
UIImage *animalImage = [[UIImage alloc] initWithData:imageData];  
[myImageView setImage:animalImage];

答案 1 :(得分:0)

从OData返回的数据可能是Base64编码的。 尝试使用http://cocoawithlove.com/2009/06/base64-encoding-options-on-mac-and.html

对其进行解码

希望有所帮助