android 调用webservice返回的数据解析

发布于 2021-11-17 01:35:28 字数 772 浏览 915 评论 5

请问一下怎么解析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> 中?

谢谢!!

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(5

因为看清所以看轻 2021-11-17 13:40:46
          /**
	 * 分割返回结果
	 * @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;
	}

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

沙与沫 2021-11-17 13:37:09

现在我需要截取{}中的类容。

嘦怹 2021-11-17 13:31:21

Table=anyType{

                                Photo_ID=5;

                                ID=2;

                                Photo_Uname=田海森              ;

                                Photo_Name=2012                                              ;

                                Photo_image=2012.jpg;

                                };

怎么从这个字符串中解析出等号后面的数据到map<string,string>中?

噩梦成真你也成魔 2021-11-17 13:18:57

求大神指点一下。

像你 2021-11-17 01:48:51

我在网上找了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());

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

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文