android http请求并解析返回的xml

原创 2012年03月30日 10:32:40
String requestUrl = RequestUrlMng.getHost(context)+"/mservices/user/updateNickname.action?nickname="+nickname;
HttpGet httpRequest = new HttpGet(requestUrl);
try{
	HttpClient httpClient = new DefaultHttpClient();
	HttpResponse httpResponse = httpClient.execute(httpRequest);
	if(httpResponse.getStatusLine().getStatusCode() != HttpStatus.SC_OK)
	{
	     Log.e("XXX", "can't reach:"+httpResponse.getStatusLine().getStatusCode());
	     return;
	}
	SAXParserFactory factory = SAXParserFactory.newInstance();
	SAXParser parser = factory.newSAXParser();
	XMLContentHandler handler = new XMLContentHandler();
	parser.parse(httpResponse.getEntity().getContent(), handler);
	Toast.makeText(context, handler.getResult().getStatus()+":"+handler.getResult().getMsg(), Toast.LENGTH_LONG).show();
}catch(Exception e){
	Log.e("XXX", e.getMessage());
}

class XMLContentHandler extends DefaultHandler{
		private RequestResult res;
		private static final String STATUS = "status";
		private static final String MSG = "msg";
		private String tmpStr;
		private String content;
		public RequestResult getResult(){
			return res;
		}
		@Override
		public void startDocument() throws SAXException{
			
		}
		@Override
		public void characters(char[] ch,int start,int length)
		                    throws SAXException{

		     content = new String(ch,start,length);


		}
		@Override
		public void startElement(String uri,String localName,String name
				,Attributes attrs) throws SAXException{
			if("result".equals(localName)){
				res = new RequestResult();
				Log.i("XXX", "<result>");
			}
			tmpStr = localName;
		}
		@Override
		public void endElement(String uri,String localName,String name)
		                          throws SAXException{
			if(STATUS.equals(localName))
				res.setStatus(content);
			else if(MSG.equals(localName))
				res.setMsg(content);
			if("result".equals(localName))
				Log.i("XXX", "</result>");
			else
			    Log.i("XXX", "<"+localName+">"+content+"</"+localName+">");
		}
	}

xml文件格式:

<result>
<status>0</status>
<msg>成功</msg>
</result>



版权声明:本文为博主原创文章,未经博主允许不得转载。

相关文章推荐

Android--通过Http协议向web服务器发送XML数据和调用webService

笔记摘要:     这里介绍了向web服务器提交XML实体数据,通过将请求参数和请求方法按照某种协议封装在XML文件中,提交到WebServices(网络上提供的API,天气查询,股票行情     等...

android 读xml

(转自:http://www.cnblogs.com/feisky/archive/2011/01/10/1932164.html) 在Android平台上可以使用Simple API ...

Android利用Soap读取WebService并且解析XML的DataSet数据

Android利用Soap读取WebService并且解析XML的DataSet数据 一、Soap的结构          调用webService需要以下几个参数:命名空间、Soap Action、...

解析Xml&amp;Http请求DEMO

  • 2010-12-23 11:59
  • 49KB
  • 下载

android HTTP 通信, XML 解析, 通过 Hander 实现异步消息处理

package com.webabcd.handler; import android.app.Activity; import android.os.Bundle; import android....

Android HTTP下载XML文件并解析

获取开源代码的网站 code.google.com github.com 在github搜索smart-image-view 下载开源项目smart-image-view 使用自定义组件时,标签名字要...

android HTTP 通信, XML 解析

介绍 在 Android 中与服务端做 HTTP 通信,解析 XML,通过 Handler 实现异步消息处理 HTTP 通信 - 与服务端做 HTTP 通信,分别以 GET 方式和 POST 方式做演...

Android --- Http协议,解析服务器中给定的XML文件时的权限问题

如题:要求使用Http协议中的POST方法,解析存在服务器中的XML文件。 服务器使用的是Tomcat搭建,在webapp目录下自定义一个xml文件。 1 2012-04-04 ...

android之Http下载 和xml 解析(SAX)

Http下载步骤: =========================================================================================...

Android中使用Json和Xml与服务器进行通信,使用代码发送Get和Post请求,http请求辅助类

1.通过xml数据域服务器通信 一、与服务器通信 类似于浏览器与服务器通信,Android应用也可以与Web服务器通信,比如Android应用可以访问Servlet、JSP、图...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:深度学习:神经网络中的前向传播和反向传播算法推导
举报原因:
原因补充:

(最多只允许输入30个字)