android 调用webservice返回的数据解析

RatRace 发布于 2012/06/13 20:01
阅读 5K+
收藏 0
请问一下怎么解析SoapObject数据,比如我的数据如下:
anyType{
schema=anyType{
element=anyType{
complexType=anyType{
choice=anyType{
element=anyType{
complexType=anyType{
sequence=anyType{
element=anyType{}; 
element=anyType{}; 
element=anyType{}; 
element=anyType{}; 
}; 
}; 
}; 
}; 
}; 
}; 
}; 
diffgram=anyType{
NewDataSet=anyType{
Table=anyType{
ID=2; 
User_Name=XXX; 
User_Pwd=123; 
User_Pic=tian.jpg; 
}; 
}; 
}; 
 }

我 想把 里面的ID,User_Name,User_Pwd,User_Pic。解析出来放到 list<String,String> 中?
谢谢!!
加载中
0
RatRace
RatRace

我在网上找了for(int   i=0;i <soapObject.getPropertyCount();i++){
//              SoapObject   soapChilds   =(SoapObject)soapObject.getProperty(i);
//              Log.i("shouhulife",soapChilds.getProperty( "ID ").toString());
//              Log.i("shouhulife",soapChilds.getProperty( "User_Name ").toString());
//              Log.i("shouhulife",soapChilds.getProperty( "User_Pwd ").toString());
//              Log.i("shouhulife",soapChilds.getProperty( "User_Pic ").toString());

则这个代码,但是报错说 空指针。

0
RatRace
RatRace
求大神指点一下。
0
RatRace
RatRace
Table=anyType{
                                Photo_ID=5;
                                ID=2;
                                Photo_Uname=田海森              ;
                                Photo_Name=2012                                              ;
                                Photo_image=2012.jpg;
                                };
怎么从这个字符串中解析出等号后面的数据到map<string,string>中?
0
RatRace
RatRace
现在我需要截取{}中的类容。
0
RatRace
RatRace
          /**
	 * 分割返回结果
	 * @param response 返回字符串
	 * @return 
	 */
	public static Map<String, String> splitResponse(String response) throws Exception
	{
		//保存返回结果
		Map<String, String> map = new HashMap<String, String>();
		//判断是否为空
		if (!TextEdit.isEmpty(response))
		{
			//已“&”进行分割
			String[] array = response.split(";");
			if (array.length > 2) 
			{
				String ID = array[0]; //
				String User_Name = array[1];//
				String User_Pwd = array[2]; //
				String User_Pic = array[3];//
				String[] ID1 = ID.split("=");
				if (ID1.length == 2) 
				{
					map.put("ID", ID1[1]);
				}
				String[] User_Name1 = User_Name.split("=");
				if (User_Name1.length == 2) 
				{
					map.put("User_Name", User_Name1[1]);
				}
				String[] User_Pwd1 = User_Pwd.split("=");
				if (User_Pwd1.length == 2) 
				{
					map.put("User_Pwd", User_Pwd1[1]);
				}
				String[] User_Pic1 = User_Pic.split("=");
				if (User_Pic1.length == 2) 
				{
					map.put("User_Pic", User_Pic1[1]);
				}
			}
			else
			{
				throw new Exception("分割字符串不符合要求。");
			}
		}
		else
		{
			throw new Exception("分割字符串为空");
		}
		return map;
	}

上面是我解析数据用的方法,如果有跟好的方法请大家不吝赐教。谢谢!
返回顶部
顶部