Pull方法解析XML
来源:互联网 发布:js 转动效果 编辑:程序博客网 时间:2024/06/07 03:40
package com.zq.xmltest;
import java.io.IOException;
import java.io.StringReader;
import org.apache.http.HttpEntity;
import org.apache.http.HttpResponse;
import org.apache.http.client.ClientProtocolException;
import org.apache.http.client.HttpClient;
import org.apache.http.client.methods.HttpGet;
import org.apache.http.impl.client.DefaultHttpClient;
import org.apache.http.util.EntityUtils;
import org.xmlpull.v1.XmlPullParser;
import org.xmlpull.v1.XmlPullParserException;
import org.xmlpull.v1.XmlPullParserFactory;
import android.app.Activity;
import android.os.Bundle;
import android.util.Log;
import android.view.Menu;
import android.view.MenuItem;
public class MainActivity extends Activity {
@Overrideprotected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); sendRequestWithHttpClient();}private void sendRequestWithHttpClient() { // TODO Auto-generated method stub new Thread(new Runnable(){ @Override public void run() { // TODO Auto-generated method stub try { HttpClient httpClient = new DefaultHttpClient(); HttpGet httpGet = new HttpGet("http://192.168.1.4/test/get_data.xml"); HttpResponse httpResponse = httpClient.execute(httpGet); if(httpResponse.getStatusLine().getStatusCode() == 200) { HttpEntity entity = httpResponse.getEntity(); String response = EntityUtils.toString(entity, "utf-8"); parseXMLWithPull(response); } } catch (ClientProtocolException e) { // TODO Auto-generated catch block e.printStackTrace(); } catch (IOException e) { // TODO Auto-generated catch block e.printStackTrace(); } } }).start();}private void parseXMLWithPull(String xmlData) { // TODO Auto-generated method stub try { XmlPullParserFactory factory = XmlPullParserFactory.newInstance(); XmlPullParser xmlPullParser = factory.newPullParser(); xmlPullParser.setInput(new StringReader(xmlData)); int eventType = xmlPullParser.getEventType(); String id = ""; String name = ""; String version = ""; while(eventType != XmlPullParser.END_DOCUMENT) { String nodeName = xmlPullParser.getName(); switch(eventType) { case XmlPullParser.START_TAG: try { if("id".equals(nodeName)) { id = xmlPullParser.nextText(); } else if("name".equals(nodeName)) { name = xmlPullParser.nextText(); } else if("version".equals(nodeName)) { version = xmlPullParser.nextText(); } break; } catch (IOException e) { // TODO Auto-generated catch block e.printStackTrace(); } case XmlPullParser.END_TAG: { if("app".equals(nodeName)) { Log.d("ZQ", "id is " + id ); Log.d("ZQ", "name is " + name); Log.d("ZQ", "version is " + version); } break; } default: break; } try { eventType = xmlPullParser.next(); } catch (IOException e) { // TODO Auto-generated catch block e.printStackTrace(); } } } catch (XmlPullParserException e) { // TODO Auto-generated catch block e.printStackTrace(); }}
}
- XML解析PULL方法
- Pull方法解析XML
- PULL方法解析XML文件
- pull方法解析Xml文档
- pull方法解析XML文件
- Android 用Pull方法解析XML文件
- Android使用pull方法解析XML文件
- Pull解析XML文件,使用HttpClient方法
- xml的一中解析方法pull
- XML解析Pull解析
- XML解析---PULL解析
- 使用pull方法解析Xml文件(省市县Xml)
- Android 用Pull解析XML方法解析谷歌天气
- 关于XML文件解析的学习软件PULL解析方法
- XML的pull解析
- Pull解析XML文件
- Pull详解解析xml
- Pull解析Xml方式
- Win7+VisualStudio2013编译ARToolKit5.3源码
- 坐标系节点
- HDU - 1085 Holding Bin-Laden Captive!(硬币问题)
- OJ 1088 滑雪__动态规划
- Spring概述
- Pull方法解析XML
- CentOS安装jdk的三种方法
- CImage图像得到BYTE数组数据 - 8bit灰度图像
- Spring基础
- oracle高效sql
- SVPProgressHUD 与 MBProgressHUD
- UVA - 10763 Foreign Exchange
- 天猫双11爬虫(福利:212万条商品数据免费下载)
- 加班,加班,加班。。。。。