2015-10-06 2 views
2

как я могу получить содержание URL ниже с помощью HttpURLConnection и поместить его в Textview?получить текст с URL-адреса с помощью android httpurlconnection

http://ephemeraltech.com/demo/android_tutorial20.php

+0

http://stackoverflow.com/a/8655039/5202007 – Tauqir

+0

Возможного дубликат [Http Get с использованием Android HttpURLConnection] (HTTP : //stackoverflow.com/questions/8654876/http-get-using-android-httpurlconnection) – Mel

+0

спасибо, что я видел это, прежде чем спрашивать, но это мне не помогает содержание в адресе: "учебник 20 WORKED, WE GOT Колорадо NNECTION " и я хочу получить этот текст из url, а затем поместить его в текстовый вид –

ответ

6
class GetData extends AsyncTask<String, Void, String> { 

    @Override 
    protected String doInBackground(String... params) { 
     HttpURLConnection urlConnection = null; 
     String result = ""; 
     try { 
      URL url = new URL("http://ephemeraltech.com/demo/android_tutorial20.php"); 
      urlConnection = (HttpURLConnection) url.openConnection(); 

      int code = urlConnection.getResponseCode(); 

      if(code==200){ 
       InputStream in = new BufferedInputStream(urlConnection.getInputStream()); 
       if (in != null) { 
        BufferedReader bufferedReader = new BufferedReader(new InputStreamReader(in)); 
        String line = ""; 

        while ((line = bufferedReader.readLine()) != null) 
         result += line; 
       } 
       in.close(); 
      } 

      return result; 
     } catch (MalformedURLException e) { 
      e.printStackTrace(); 
     } catch (IOException e) { 
      e.printStackTrace(); 
     } 

     finally { 
      urlConnection.disconnect(); 
     } 
     return result; 

    } 

    @Override 
    protected void onPostExecute(String result) { 
     yourTextView.setText(result); 
     super.onPostExecute(s); 
    } 
} 

и называют этот класс, используя

new GetData().execute(); 
+0

спасибо, что он работает , но могу ли я сделать это без создания класса? –

+0

- это работа сети и должна выполняться на отдельной ветке. Поэтому вам нужен класс asyncTask. Потому что asynctask - лучший вариант для выполнения сетевых операций. –

+0

еще раз большое спасибо, что вы решили мою большую проблему. –

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