Android Saop响应解析
我从服务器得到响应,我想解析它并将其添加到arraylist中,但我得到了Classcastexception。请帮我分析一下Android Saop响应解析,android,Android,我从服务器得到响应,我想解析它并将其添加到arraylist中,但我得到了Classcastexception。请帮我分析一下 <NewDataSet> <Table> <Mother_Name>swati</Mother_Name> <Mother_DOB>15/01/1987</Mother_DOB> <Mother_Age>30</Mother_Age> <Mother_ExpC
<NewDataSet>
<Table>
<Mother_Name>swati</Mother_Name>
<Mother_DOB>15/01/1987</Mother_DOB>
<Mother_Age>30</Mother_Age>
<Mother_ExpConceiveDate>28/07/2013</Mother_ExpConceiveDate>
<Alert_Description>mother alert</Alert_Description>
</Table>
</NewDataSet>
这是我的密码
int count = soapResponse.getPropertyCount();
SoapObject response1 = (SoapObject) response;
Log.w("response",""+response1.getProperty(0));
for (int j = 0; j < count; j++) {
/** Temp SeatInfo soap object */
SoapObject soChild = (SoapObject) response1.getProperty(j);
Log.w("motherName",""+soChild.getProperty(0));
}
对此使用xml pullparser。这将返回xml的数组列表
MyXmlPullParser objMyXmlPullParser = new MyXmlPullParser(context);
List<Map<String , String>> list = objMyXmlPullParser.readXml("Xml respose put here", "Table");
public class MyXmlPullParser
{
Context _context ;
public MyXmlPullParser(Context _context)
{
this._context = _context ;
}
public List<Map<String , String>> readXml(String XmlString , String ParentTag)
{
Map<String , String > map = new HashMap<String, String>();
List<Map<String , String >> list = new ArrayList<Map<String , String >>();
try
{
String Tag = "" ;
XmlPullParserFactory factory = XmlPullParserFactory.newInstance();
factory.setNamespaceAware(true);
XmlPullParser xpp = factory.newPullParser();
xpp.setInput(new StringReader (XmlString));
int eventType = xpp.getEventType();
while (true)
{
if(eventType == XmlPullParser.START_TAG)
{
Tag = xpp.getName();
}
else if(eventType == XmlPullParser.END_TAG)
{
Tag = "" ;
if(xpp.getName().equals(ParentTag))
{
list.add(map);
map = new HashMap<String, String>();
}
}
else if(eventType == XmlPullParser.TEXT)
{
String text = xpp.getText();
if(!Tag.equals("") && !Tag.equals(ParentTag))
{
map.put(Tag, text);
}
}
else if(eventType == XmlPullParser.END_DOCUMENT)
{
System.out.println("End document");
break ;
}
eventType = xpp.next();
}
}
catch (XmlPullParserException e)
{
Log.e("xml reader" , "error in parsing xml");
return null ;
}
catch (IOException e)
{
Log.e("xml reader" , "error in IO in xml");
return null ;
}
return list ;
}
发布相关的codeint计数=soapResponse.getPropertyCount;SoapObject response1=SoapObject响应;Log.wresponse,+response1.getProperty0;对于int j=0;j<计数;j++{/**Temp SeatInfo soap object*/SoapObject soChild=SoapObject response1.getPropertyj;Log.wmotherName,+soChild.getProperty0;}