解决方案 »
- 如何保持当前屏幕的orientation
- android 浏览器打开txt,Doc,xls,ppt
- 已经获得了新浪微博的AccessToken,无法获取当前登录的用户信息
- android的selector代码化
- 两个关于Android的界面操作问题
- 菜鸟求大神,本人刚进入android开发
- WCF返回JSON绑定Listview出错
- Android使用IsLibrary项目关联【R文件冲突】
- 蘑菇街开源的 IM 项目 TeamTalk,包括 Android、iOS、Win、Mac 客户端以及 Server端、管理后台、环境自动部署,大赞!
- fragment里网络请求,返回数据的处理!大家帮帮忙
- 为什么输入框中不可以输入文字数字等信息
- Android 关机时间
public List<HashMap<String, Object>> getfind(String shangpin) {
SoapObject request = new SoapObject(serviceNameSpace, getFind);
request.addProperty("shangpin", shangpin);
SoapSerializationEnvelope envelope = new SoapSerializationEnvelope(
SoapEnvelope.VER11);
envelope.bodyOut = request;
envelope.dotNet = true;
HttpTransportSE ht = new HttpTransportSE(serviceURL);
try {
ht.call(serviceNameSpace + getFind, envelope);
if (envelope.getResponse() != null) {
SoapObject result = (SoapObject) envelope.getResponse();
return parse(result);
}
} catch (HttpResponseException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
} catch (XmlPullParserException e) {
e.printStackTrace();
}
return null;
}
和xml解析不太一样,你说的用pull解析器解析好像不太适合吧
我找了一个方法来定义解析,是参考别人的,
private List<HashMap<String, Object>> parse(SoapObject result) {
// TODO Auto-generated method stub
List<HashMap<String, Object>> lists = new ArrayList<HashMap<String, Object>>();
if (result != null) {
int len = result.getPropertyCount();
if (len > 0) {
HashMap<String, Object> map = new HashMap<String, Object>();
for (int i = 0; i < len; i++) {
int tag = i / 6;
switch (tag) {
case 0:
map.put("time", result.getProperty(i).toString());
break;
case 1:
map.put("shangpin", result.getProperty(i).toString());
break;
case 2:
map.put("cangku", result.getProperty(i).toString());
break;
case 3:
map.put("jinjia", result.getProperty(i).toString());
break;
case 4:
map.put("number", result.getProperty(i).toString());
break;
case 5:
map.put("totalprice", result.getProperty(i).toString());
break; default:
break;
}
}
lists.add(map);
}
} return lists;
}