我正在尝试从Sqlite数据库中获取GIF / PNG / JPG图像。 Monotouch中有没有办法将Blob字段转换为图像?
我在猜测:
从SQLite获取数据byte []到内存流中:
MemoryStream blob = new MemoryStream(blobFromSQLite[]);
通过流将数据加载到NSData对象中:
UIImage.LoadFromData(NSData.FromStream(blob));
但是如何从sqlite字段中获取流?
答案 0 :(得分:4)
最简单的方法是:
byte[] myBuffer = null;
using (SqliteCommand sqlCom = new SqliteCommand(sqlCon)) //assuming sqlCon is your SqliteConnection
{
sqlCom.CommandText = "SELECT Images FROM MyTable WHERE Name = 'MyImage.png'";
using (SqliteDataReader dbReader = sqlCom.ExecuteReader())
{
if (dbReader.HasRows)
{
while (dbReader.Read())
{
myBuffer = (byte[])dbReader["Images"];
}
}
}
}
要将其作为UIImage
,您根本不必使用流:
UIImage.LoadFromData(NSData.FromArray(myBuffer));