0

Web サイトのソース コードを取得できるシンプルな Android アプリを作成しようとしています。とにかく、私は次のことを書きました:

WebView webView = (WebView) findViewById(R.id.webView);
try {
    webView.setWebViewClient(new WebViewClient());          
    InputStream input = (InputStream) new URL(url.toString()).getContent();
    webView.loadDataWithBaseURL("", "<html><body><p>"+input.toString()+"</p></body></html>", "text/html", Encoding.UTF_8.toString(),""); 
    setContentView(webView);
} catch (Exception e) {
    Alert alert = new Alert(getApplicationContext(),
                            "Error fetching data", e.getMessage());
}

3行目をソースコードを取得する他の方法に何度か変更しようとしましたが、すべてアラートにリダイレクトされます(メッセージなしのエラー、タイトルのみ)。

私は何を間違っていますか?

4

1 に答える 1

0

これを使用して Web ページをロードできない特定の理由はありますか?

webView.loadUrl("www.example.com");

ソース コードを実際に文字列に取り込み、操作して表示できるようにしたい場合は、コンテンツへのストリームを開き、標準の Java メソッドを使用してデータを文字列に読み込みます。その後、好きなことを行うことができます:

InputStream is = new URL("www.example.com").openStream();

InputStreamReader is = new InputStreamReader(in);
StringBuilder sb = new StringBuilder();
BufferedReader br = new BufferedReader(is);
String read = br.readLine();

while(read != null) {
    sb.append(read);
    read = br.readLine();
}

String sourceCodeString = sb.toString();
webView.loadDataWithBaseURL("www.example.com/", "<html><body><p>"+sourceCodeString+"</p></body></html>", "text/html", Encoding.UTF_8.toString(),"about:blank");
于 2012-12-11T01:04:20.550 に答える