2012-03-08 8 views
0

URLから簡単な文字列を取得する方法を正確に把握することはできません。すべての適切なマニフェスト権限を持つAndroidがHTML/PHPから文字列を取得する

String str = null; 
    try { 
     // Create a URL for the desired page 
     URL url = new URL("mysite.com/thefile.txt"); 

     // Read all the text returned by the server 
     BufferedReader in = new BufferedReader(new InputStreamReader(url.openStream())); 

     while ((str = in.readLine()) != null) { 
      // str is one line of text; readLine() strips the newline character(s) 
     } 
     in.close(); 
    } catch (MalformedURLException e) { 
    } catch (IOException e) { 
    } 
    Toast.makeText(getApplicationContext(), str, Toast.LENGTH_LONG).show(); 

以外のものを返すように得ることができない:私はこのコードのいくつかのバージョンを試してみました。私のtxtファイルだけ

www.google.com

が含まれていると私はどのブラウザでも携帯電話やパソコンからアクセスすることができます。何か案は?

答えて

0

答えはhereです。ここで

コードです:

Use the DefaultHttpClient httpclient = new DefaultHttpClient(); 

HttpGet httppost = new HttpGet("http://www.urlOfThePageYouWantToRead.nl/text.txt"); 
HttpResponse response = httpclient.execute(httppost); 
     HttpEntity ht = response.getEntity(); 

     BufferedHttpEntity buf = new BufferedHttpEntity(ht); 

     InputStream is = buf.getContent(); 


     BufferedReader r = new BufferedReader(new InputStreamReader(is)); 

     StringBuilder total = new StringBuilder(); 
     String line; 
     while ((line = r.readLine()) != null) { 
      total.append(line + "\n"); 
     } 

     TextView.setText(total); 
2

私はあなたのコードを見れば、これは、間違って何を教えてくれないことに驚いていないよ:

} catch (MalformedURLException e) { 
} catch (IOException e) { 
} 

をエラーが発生した場合、あなたは何も気づかないだろう。いくつかの種類のエラーレポートを論文のcatchブランチに配置し、ログを確認してください。ところで、mysite.com/thefile.txtはURLではなく、http://mysite.com/thefile.txtです。

+0

は私がキャッチを削除すると、Eclipseは私がコンパイルさせません、それだけでトライキャッチまたは私は/ついに、それは同じことを行い試みをしようと囲むように述べています。 – Nick

+0

@ニック:そうした場合、これらのエラーを適切に処理する必要があります。現在、あなたは*無視しています*。たぶんエラーを出力して、何かを終了させるかもしれません。 –

関連する問題