gpt4 book ai didi

Android:无法从 SOAP 响应中解析空值 (kSoap2)

转载 作者:行者123 更新时间:2023-11-29 00:47:17 25 4
gpt4 key购买 nike

当将 SoapObject 数据解析为 String[] 时,web 服务响应中的空字段不会添加到其中,我无法通过检查 null 或“”来识别空属性。

所以我的问题基本上是:SoapObject 包含适量的属性,但解析结果 (String[]) 不包含空属性,我也无法检查空属性并将“”添加到 String [].

这在保存到 SQLite 数据库时给我带来了问题,因为每次“用户”包含不同数量的字段。

public static String[] getStringArrayResponse(SoapObject node, Vector<String> strings) {

boolean isFirstCall = false;

if (strings == null) {
isFirstCall = true;
strings = new Vector<String>();
}

int count = node.getPropertyCount();

for (int i = 0; i < count; i++) {

Object obj1 = node.getProperty(i);

if (obj1 instanceof SoapObject) {
if (((SoapObject)obj1).getPropertyCount() > 0) {
// Returns the correct amount of properties
Log.d("PARSER", "propertycount = " +((SoapObject)obj1).getPropertyCount());
getStringArrayResponse((SoapObject)obj1, strings);
}
} else if (obj1 instanceof SoapPrimitive) {
strings.add(((SoapPrimitive)obj1).toString());
}
}

if (isFirstCall) {
return (String[])strings.toArray(new String[strings.size()]);
}
return null;
}

这真的让我很头疼,我很感激能得到的任何帮助:)

最佳答案

我需要检查“AnyType{}”:)

if (obj1.toString().equals("anyType{}")){
strings.add("");
}

只是在 else if 下面添加了这段代码。

关于Android:无法从 SOAP 响应中解析空值 (kSoap2),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5727369/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com