xml的解析
来源:互联网 发布:打考勤软件 编辑:程序博客网 时间:2024/06/09 07:52
try{
String result = WebServiceUtils.getMapLayers();
InputStream inputStream = new ByteArrayInputStream(result.getBytes());
LayerInfo.parse(inputStream);
}catch(Exception e){
e.printStackTrace();
}
}
public static String getMapLayers(){
String result ="";
try{
String endPoint = AppContext.url + "/ZZMobileService.asmx";
String methodName ="getMapLayers";
String soapAction = NAMESPACE + methodName;
SoapObject rpc = new SoapObject(NAMESPACE, methodName);
rpc.addProperty("checkCode", PWD);
SoapSerializationEnvelope envelope = new SoapSerializationEnvelope(SoapEnvelope.VER10);
envelope.bodyOut = rpc;
envelope.dotNet = true;
envelope.setOutputSoapObject(rpc);
HttpTransportSE transport = new HttpTransportSE(endPoint);
transport.call(soapAction, envelope);
// 获取返回的数据
SoapObject object = (SoapObject) envelope.bodyIn;
// 获取返回的结果
result = object.getProperty(0).toString();
}catch(Exception e){
e.printStackTrace();
}
Log.i("TAG", "result="+result);
return result;
}
public static void parse(InputStream inputStream) throws IOException{
AppContext.pLayerList.removeAll(AppContext.pLayerList);
AppContext.cLayerList.removeAll(AppContext.cLayerList);
LayerInfo info = null;
XmlPullParser xmlParser = Xml.newPullParser();
try{
xmlParser.setInput(inputStream, "UTF-8");
int evtType=xmlParser.getEventType();
while(evtType!=XmlPullParser.END_DOCUMENT){
String tag = xmlParser.getName();
switch (evtType) {
case XmlPullParser.START_DOCUMENT:
break;
case XmlPullParser.START_TAG:
if(tag.equalsIgnoreCase("layer")){
info = new LayerInfo();
String pid = xmlParser.getAttributeValue(null, "pid");
if(pid ==null){
info.setName(xmlParser.getAttributeValue(null, "name"));
info.setChecked(xmlParser.getAttributeValue(null, "checked"));
info.setIsShow(xmlParser.getAttributeValue(null, "isShow"));
info.setLayerUrl(xmlParser.getAttributeValue(null, "url"));
info.setType(xmlParser.getAttributeValue(null,"type"));
AppContext.pLayerList.add(info);
}
}else if(tag.equalsIgnoreCase("clayer")){
if(info!=null){
ChildLayerInfo child = new ChildLayerInfo();
child.setId(xmlParser.getAttributeValue(null,"id"));
child.setName(xmlParser.getAttributeValue(null,"name"));
child.setType(xmlParser.getAttributeValue(null,"type"));
info.addChildInfo(child);
}
}
break;
case XmlPullParser.END_TAG:
break;
}
evtType=xmlParser.next();
}
}catch(Exception e){
e.printStackTrace();
}finally{
inputStream.close();
}
}
- XML的解析 DOM解析
- 解析xml的字符串
- xml的解析
- xml的解析
- XML的解析
- 微软的 XML 解析
- xml文件的解析
- 关于XML的解析
- xml的解析
- XML的解析方法
- XML的java解析- -
- 解析xml的方法
- XML的解析模型
- 解析xml的方式
- xml的解析方法
- XML的pull解析
- android的xml解析
- XML的解析
- Unity3d 5.3.5使用sqlite3
- UVa 1252该类的子集的二进制表示方法还需要学习
- java 反射工具
- hdu 5752 Sqrt Bo (水题)
- hdu 5752 Sqrt Bo(2016 Multi-University Training Contest 3——水题)
- xml的解析
- 在canvas中插入图片
- C# Winform程序上传图片到指定目录
- 一个servlet处理多个请求
- easy_install 和 pip 的安装及使用
- codeigniter Message: mkdir(): Invalid path Filename: drivers/Session_files_driver.php
- 大数据技术是什么
- MATLAB tcpip发送和接收文件
- Java学习总结-反射