所有-我以前从未做过这种事情,我很困惑。我在 Google 上花了几个小时寻找一些示例代码或任何提示,但是每当我尝试使用可用代码时,我总是会遇到错误,并且最终会比开始时更加困惑。所以自怜和借口已经够多了。让我们来看看这个问题:我有一个应用程序“屏幕碎片”一个网站,现在是谷歌。我已经得到它,所以我可以在文本视图中显示 html: 我现在的问题是从中获取信息。我想要的只是标题标签(“Google”)中的信息。我已经阅读了有关 HTML 解析的内容,但是当我阅读有关 TagSoup 或其他类似信息的信息时,我感到非常困惑。我是否需要这些来执行此操作,或者我可以编写一些 Java 代码来提取标题标签并将其转换为字符串然后显示它。如果我确实需要 HTML 解析器,有人可以给我一些示例代码。我在他们的网站上找不到任何东西。这是我到目前为止的代码:
public class MainActivity extends Activity {
String page;
String display;
Document doc;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
new AddStringTask().execute();
}
@Override
public boolean onCreateOptionsMenu(Menu menu) {
getMenuInflater().inflate(R.menu.activity_main, menu);
return true;
}
class AddStringTask extends AsyncTask<Void, String, Void> {
@Override
protected Void doInBackground(Void... unused) {
DefaultHttpClient httpClient = new DefaultHttpClient();
HttpGet httpGet = new HttpGet("http://www.google.com");
ResponseHandler<String> resHandler = new BasicResponseHandler();
try {
page = httpClient.execute(httpGet, resHandler);
} catch (ClientProtocolException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
return null;
}
@Override
protected void onProgressUpdate(String... item) {
}
@Override
protected void onPostExecute(Void unused) {
TextView google = (TextView) findViewById(R.id.google);
google.setText(page);
}
}
}
任何示例代码都会很棒,因为我需要查看一些示例。非常感谢您的时间。