2013-03-17 2 views
2

Я хочу прочитать данные с php, и я использовал объект JSON для получения данных. И одна из данных, которую я хочу получить из базы данных, - BLOB. Я попробовал сам со следующим кодом.Получение BLOB из объекта JSON в Android

products = new JSONArray(getJSONUrl(url)); 
// looping through product 
for (int i = 0; i < products.length(); i++) { 
    JSONObject jsonObj = products.getJSONObject(i); 
    try { 
     placeName = jsonObj.getString(String.valueOf(TAG_PlaceName)); 
     placeDesc = jsonObj.getString(TAG_PlaceDesc); 
     Blob blob = (Blob) jsonObj.get(TAG_placeIcon); 
     byte[] byteBlob = blob.getBytes(0, (int) blob.length()); 
     Bitmap bmp = BitmapFactory.decodeByteArray(byteBlob, 0, byteBlob.length); 
     rowItems.add(new RowItem(placeName, placeDesc, bmp)); 
    } catch (SQLException e) { 
     e.printStackTrace(); 
    } 
} 
  • RowItem класс, который я держу данные.

Может кто-нибудь указать, что не так в моем коде. Я пытался оглядеться, как много часов, но я все еще не могу найти решение.

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

+0

ли это бросить исключение? –

+0

ошибок нет – TheTree

ответ

0

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

 @Override 
     protected Bitmap doInBackground(String... params) { 
      String id = params[0]; 
      String add = "http://user localhost/ImageUpload/getImage.php?id="+id; 
      URL url = null; 
      Bitmap image = null; 
      try { 
       url = new URL(add); 
       image = BitmapFactory.decodeStream(url.openConnection().getInputStream()); 
      } catch (MalformedURLException e) { 
       e.printStackTrace(); 
      } catch (IOException e) { 
       e.printStackTrace(); 
      } 
      return image; 
     } 
Смежные вопросы