JSON, XML подключение к веб-API для Android? - PullRequest
0 голосов
/ 06 июля 2011

Я довольно новичок в мире Android и Java, и мне интересно, как я могу получить данные из веб-API здесь http://www.imdbapi.com/ В Android. Должен ли я использовать JSON или XML? Какие шаги? Во-первых, я хочу знать, как загрузить данные, а затем разобрать их в переменных. Любой пример кода?

1 Ответ

0 голосов
/ 06 июля 2011
HttpClient httpclient = new DefaultHttpClient();
    // Prepare a request object
    HttpGet httpget = new HttpGet(url); 
    // Execute the request
    HttpResponse response;

    JSONArray arr = new JSONArray();
    try {
       response = httpclient.execute(httpget);

       HttpEntity entity = response.getEntity();

       if (entity != null && response.getStatusLine().getStatusCode() == 200) {
                // A Simple JSON Response Read
                InputStream instream = entity.getContent();
                String result = convertStreamToString(instream);
                arr=new JSONArray(result);
                instream.close();

            }
        } catch (ClientProtocolException e) {
            // TODO Auto-generated catch block
            Log.e(TAG,e.toString());
        } catch (IOException e) {
            // TODO Auto-generated catch block
            Log.e(TAG,e.toString());
        } catch (JSONException e) {
            // TODO Auto-generated catch block
            Log.e(TAG,e.toString());
        }

        return arr;


public static String convertStreamToString(InputStream is) {
    BufferedReader reader = new BufferedReader(new InputStreamReader(is));
    StringBuilder sb = new StringBuilder();

    String line = null;
    try {
        while ((line = reader.readLine()) != null) {
            sb.append(line + "\n");
        }
    } catch (IOException e) {
        Log.e(TAG + "ERROR",e.toString());

    } finally {
        try {
            is.close();
        } catch (IOException e) {
            e.printStackTrace();
            Log.e(TAG + "ERRO",e.toString());
        }
    }
    return sb.toString();
}

Что касается синтаксического анализа, вот, пожалуйста: http://developer.android.com/reference/org/json/package-summary.html

Кстати, все это было легко найти в Google:)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...