MonoTouch - извлечение изображения из базы данных Sqlite - PullRequest
3 голосов
/ 03 апреля 2011

Я пытаюсь получить изображение GIF / PNG / JPG из базы данных Sqlite.В Monotouch есть способ преобразовать поле Blob в изображение?

Я предполагаю:

Получить байт данных [] из SQLite в поток памяти:

MemoryStream blob = new MemoryStream(blobFromSQLite[]);

Загрузка данных в объект NSData через поток:

UIImage.LoadFromData(NSData.FromStream(blob));

Но как мне получить поток из поля sqlite?

1 Ответ

4 голосов
/ 03 апреля 2011

Самый простой способ сделать это это:

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));
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...