use*_*800 2 android boolean ksoap2
我试图从SoapObject获取一个布尔值,我是从Android中使用kSOAP2的Web服务器的响应得到的...
我已经在SoapObject中保存了Web调用的响应:
SoapObject sResult = (SoapObject)envelope.bodyIn;
Run Code Online (Sandbox Code Playgroud)
我正在迭代响应并抓住值
SoapObject soapresults = (SoapObject)sResult.getProperty(0);
for (int i = 0; i < count; i++)
{
SoapObject mail = (SoapObject)soapresults.getProperty(i);
/*Getting the values here*/
}
Run Code Online (Sandbox Code Playgroud)
邮件SoapObject将类似于:
MessageInstance = anyType的{AUTHORNAME =Børnehaven; CreatedAtUtc = 2012-04-10T18:30:00; ID = 631; MessageBody = Husk i morgen; 收件人= {anyType的全名= NULL; ID = 2104535421; IsRead = TRUE; ReadAtUtc = 2012-04-10T18:30:00; }; };
而我遇到的唯一值就是"IsRead"值,我希望将其存储为布尔值...
我尝试过几件事:
(Boolean)mail.getProperty("IsRead");
((Boolean) mail.getProperty("IsRead")).booleanValue();
Run Code Online (Sandbox Code Playgroud)
但我一直在:
W/System.err(1283):java.lang.RuntimeException:非法属性:IsRead
获得它的正确方法是什么?
试试这段代码:
SoapObject soRecipient = (SoapObject) mail.getProperty("Recipient");
boolean isRead = Boolean.parseBoolean(soRecipient.getPropertyAsString("IsRead"));
String fullName = soRecipient.getPropertyAsString("FullName");
String id = soRecipient.getPropertyAsString("Id");
String readAtUtc = soRecipient.getPropertyAsString("ReadAtUtc");
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
4791 次 |
| 最近记录: |