从Sqlite数据库转换Blob到UIImage

时间:2011-05-31 18:52:30

标签: iphone sqlite uiimage blob

我在我的应用程序中使用Coredata保存了一个图像。然后我在另一个项目中导入了Sqlite文件并检索了该Blob字段并转换为NSData。然后我在尝试将此NSData转换为UIImage时获得NULL值。

NSData *data=UIImageJPEGRepresentation(tempImage, 1.0);

通过保存上下文保存上述数据

从Sqlite取回 ::

const char *sqlStatement = "select ID,NAME,IMAGE from CALL";
sqlite3_stmt *compiledStatement;
NSData *data=[[NSData alloc] initWithBytes: sqlite3_column_blob(compiledStatement, 2) length:sqlite3_column_bytes(compiledStatement, 2)];
UIImage * showImage= [UIImage imageWithData: data];

1 个答案:

答案 0 :(得分:0)

您写的代码是正确的。

我在您的代码中发现的差异以及互联网上的其他一些代码

您使用:UIImageJPEGRepresentation(tempImage, 1.0);

他们使用:UIImagePNGRepresentation(self.coffeeImage);

虽然这不是您问题的正确解决方案,但它可能会帮助您进一步调查问题。