2013-02-22 4 views
0

Я успешно храню изображение в базе данных BLOB формате.Восстановить байт [] в android от JSON webservice

DataType для изображения в веб-сервисе класса модели byte [].

Мои веб-сервисы:

@POST 
    @Consumes("application/json") 
    @Produces("application/json") 
    @Path("login") 
    public Korisnici Login(Korisnici k) { 

     Korisnici exception = new Korisnici(); 

............ 

Json вебсервис пример:

[ 
    { 
     "id": 2, 
     "ime": "haris", 
     "mjestoGoogleMaps": null, 
     "password": "1234", 
     "username": "haris", 
     "image": "iVBORw0KGgoAAAANSUhEUgAizDMizDMizDMizDMizDMizDMizDMizDMizDMizDMiz/JPL/AOc68RGNGkMYAAAAAElFTkSuQmCC" 
    } 
] 

мы видим, что служба JSON делает преобразование в строку, байт [] преобразуется в строку.

Я попытался сделать преобразование String в байт [] на Android, но я не вижу изображения.

Вот мой код:

byte [] b = new byte[getString_Image().length()]; 

profilna.setImageBitmap(getImage(b)); 

преобразования из массива байтов в растровое

public static Bitmap getImage(byte[] image) { 
     return BitmapFactory.decodeByteArray(image, 0, image.length); 
} 

Как решить эту проблему?

+1

, который выглядит как кодирования Base64 с использованием 64 = 2^6 символов A-Za-Z-9/+, чтобы кодировать 6 битов, нуждающихся в 4 символов на 3 байта. –

ответ

1

использование как этот

byte[] decodedString = Base64.decode(img, Base64.DEFAULT); 
Bitmap bitmap = BitmapFactory.decodeByteArray(decodedString, 0, decodedString.length); 
if (bitmap != null) { 
Drawable image = new BitmapDrawable(Bitmap.createScaledBitmap(bitmap, 90, 100, true)); 
} 
+0

его работа! Большое спасибо!!!!!!!!!!!!!!!!!! –

Смежные вопросы