2013-06-26 2 views
1

Мы изображение, хранящееся в SQL Server, как blob или varchar который что-то подобное:Как конвертировать VARCHAR от SQL сервера изображения в Android

0xFFD8FFE000104A46494600010100000...(Goes till 1945 characters). 

Как преобразовать это в image для ImageView? Мне нужно преобразовать его в массив байтов или Base64?

ответ

2

Кажется, это последовательность шестнадцатеричных значений. Чтобы преобразовать в массив байтов, отмените «0x» в начале, разделите строку в двухсимвольных строках («FF», «D8», «FF») и преобразуйте каждый в байт, используя (byte) Integer.parseInt(s, 16).

Какой формат данных изображения использовался для первоначального хранения изображения, вы должны сами выяснить это.

0

Когда я хранил BLOB в sqlite, я сохранил его как байт []. Большинство людей предложит вам сохранить ссылку на путь, в котором сохраняется изображение (я думаю, что это в основном для локальных файлов). Возможно, вы все равно можете использовать этот подход и хранить строковое представление URL-адреса, где pic хранится на вашем сервере, а затем загружать его асинхронно.

+0

Да, я соглашаюсь сохранить ссылку на путь наилучшим образом. Но изображение уже хранится в базе данных. – Ads