XML and HTML parsing in one Activity
-
This is XML parsing code:
public class MainActivity extends Activity {
TextView textview;
NodeList nodelist;
ProgressDialog pDialog;
String url;
String DetailText;
String URL = "Here xml address";@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
textview = (TextView) findViewById(R.id.text);
new DownloadXML().execute(URL);
}private class DownloadXML extends AsyncTask {
@Override
protected void onPreExecute() {
super.onPreExecute();
pDialog = new ProgressDialog(MainActivity.this);
pDialog.setTitle("Loading...");
pDialog.setMessage("Wait...");
pDialog.setIndeterminate(false);
pDialog.show();
}@Override
protected Void doInBackground(String... Url) {
try {
URL url = new URL(Url[0]);
DocumentBuilderFactory dbf = DocumentBuilderFactory
.newInstance();
DocumentBuilder db = dbf.newDocumentBuilder();
Document doc = db.parse(new InputSource(url.openStream()));
doc.getDocumentElement().normalize();
nodelist = doc.getElementsByTagName("point");} catch (Exception e) {
Log.e("Error", e.getMessage());
e.printStackTrace();
}
return null;}
@Override
protected void onPostExecute(Void args) {for (int temp = 0; temp < nodelist.getLength(); temp++) {
Node nNode = nodelist.item(temp);
if (nNode.getNodeType() == Node.ELEMENT_NODE) {
Element eElement = (Element) nNode;
textview.setText(textview.getText() + getNode("point", eElement) + "\n" + "\n");
textview.setText(textview.getText() + getNode("name", eElement) + "\n" + "\n");
textview.setText(textview.getText() + getNode("id", eElement) + "\n" + "\n");Here i need to insert the result from parsing HTML page
}
}
pDialog.dismiss();
}
}private static String getNode(String sTag, Element eElement) {
NodeList nlList = eElement.getElementsByTagName(sTag).item(0)
.getChildNodes();
Node nValue = (Node) nlList.item(0);
return nValue.getNodeValue();
}This is HTML parsing code:
import java.net.URL;
import org.htmlcleaner.CleanerProperties;
import org.htmlcleaner.HtmlCleaner;
import org.htmlcleaner.TagNode;
import android.app.Activity;
import android.os.Bundle;
import android.widget.TextView;public class HtmlCleanerStudyActivity extends Activity {
// HTML page
static final String BLOG_URL = "http://xjaphx.wordpress.com/";
// XPath query
static final String XPATH_STATS = "//div[@id='blog-stats']/ul/li";@Override
public void onCreat