最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Android解析服務(wù)器端發(fā)來的xml數(shù)據(jù)示例

 更新時間:2013年06月20日 14:58:10   作者:  
Android跟服務(wù)器交互數(shù)據(jù),有時數(shù)據(jù)量大時,就需要以xml形式的交互數(shù)據(jù),下面與大家分享下使用XmlPullParser來解析xml數(shù)據(jù),感興趣的朋友可以參考下哈
Android跟服務(wù)器交互數(shù)據(jù),有時數(shù)據(jù)量大時,就需要以xml形式的交互數(shù)據(jù)。這里來實(shí)現(xiàn)服務(wù)器給Android客戶端發(fā)送xml數(shù)據(jù),Android客戶端解析。

服務(wù)器端我使用dom4j第三方包來組織xml數(shù)據(jù),大家可自行百度下載。而Android客戶端則使用 XmlPullParser來解析xml數(shù)據(jù)。

服務(wù)器端代碼:
復(fù)制代碼 代碼如下:

package servlet;
import java.io.IOException;
import java.io.PrintWriter;
import java.net.URLDecoder;
import java.sql.Connection;
import java.sql.ResultSet;
import java.sql.Statement;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import org.dom4j.Document;
import org.dom4j.DocumentHelper;
import org.dom4j.Element;
public class getSms extends HttpServlet {
public getSms() {
super();
}
public void destroy() {
super.destroy(); // Just puts "destroy" string in log
// Put your code here
}
public void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
response.setContentType("text/html; charset=UTF-8" );
request.setCharacterEncoding("UTF-8");

復(fù)制代碼 代碼如下:

Document document = DocumentHelper.createDocument();
Element persons = DocumentHelper.createElement("persons");
document.add(persons);

復(fù)制代碼 代碼如下:

persons.addElement("address").addText("南京");
persons.addElement("id").addAttribute(1);
persons.addElement("thread_id").addText(2);
persons.addElement("date").addText("2013");
persons.addElement("status").addText(-1);
persons.addElement("type").addText(0);
persons.addElement("body").addText("測試");

復(fù)制代碼 代碼如下:

String xml = document.asXML(); //用dom4j組織一個XML字符串
response.setContentType("text/xml; charset=UTF-8"); //設(shè)置返回值的類型
response.getOutputStream().write(xml.getBytes("UTF-8")); //設(shè)置返回值
}
public void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
doGet(request,response);
}
public void init() throws ServletException {
// Put your code here
}
}

Android客戶端:
復(fù)制代碼 代碼如下:

String url="http://10.0.2.2:8080/sms_server/servlet/getSms";
try{
URL u = new URL(url);
HttpURLConnection conn = (HttpURLConnection) u.openConnection();
conn.setRequestMethod("GET");
if (conn.getResponseCode() == 200) {
InputStream in = conn.getInputStream();
XmlPullParser parser = Xml.newPullParser();
parser.setInput(in, "UTF-8");
int event = parser.getEventType();
while (event != XmlPullParser.END_DOCUMENT) {
Log.i("start_document", "start_document");
switch (event) {
case XmlPullParser.START_TAG:
if ("address".equals(parser.getName())) {
String address=parser.nextText();

}
if ("id".equals(parser.getName())) {
int id=parser.getAttributeValue(0);
}
if (("thread_id").equals(parser.getName())) {
String thread_id=parser.nextText();
}
if ("date".equals(parser.getName())) {
String date=parser.nextText();
}
if (("status").equals(parser.getName())) {
String status=parser.nextText();
}
if ("type".equals(parser.getName())) {
String type=parser.nextText();
}
if ("body".equals(parser.getName())) {
String body=parser.nextText();
}
break;
case XmlPullParser.END_TAG:
break;
}
event = parser.next();
}
}
}catch(Exception e){

}

相關(guān)文章

最新評論

泾源县| 平塘县| 万宁市| 保山市| 类乌齐县| 黔南| 米林县| 沛县| 西充县| 肇东市| 长白| 柘荣县| 合阳县| 石狮市| 定襄县| 平原县| 北流市| 昌图县| 西林县| 盐源县| 兴和县| 宁南县| 海阳市| 新建县| 林州市| 洛浦县| 汕头市| 遂川县| 苗栗市| 滨海县| 厦门市| 博乐市| 江门市| 马边| 渝中区| 通江县| 平舆县| 宁蒗| 盈江县| 阳谷县| 铜川市|