Android:SoapObject替换属性值

时间:2016-02-29 04:39:24

标签: android android-ksoap2

在我的一个项目中,我正在使用ksoap2库。

我必须找到一种方法来更新已添加到SoapObject的特定密钥的值,方法是

a)从SoapObject中删除键/值并再次使用新值添加键

b)更新现有密钥的值

例如,我的SoapObject与以下数据相似,

SaveXXXXRecord {ReferenceNo = TP002011; ReportDateTime = 2016-02-29 12:13;注释=试验; TokenID = 2760dad08feb5c8b553ad02c; }

我必须用新值替换TokenID的值。

1 个答案:

答案 0 :(得分:0)

我使用以下代码更新SoapObject中的值,

   private synchronized static void updateProperty(SoapObject request,
                                                String name, String value) {
    try {
        for(int i=0; i < request.getPropertyCount(); i++) {
            PropertyInfo piData = new PropertyInfo();
            request.getPropertyInfo(i, piData);
            if (CommonFunctions.ifStringsSame(name, piData.name)) {
                piData.setValue(value);
                request.setProperty(i, piData.getValue());
            }
        }
    }
    catch (Exception ex) {
            ExceptionHelper.HandleException(ex);
    }
}