JSON格式非常舒適。我寫了一個簡單的代碼到SOAP響應V1轉換成JSON:
public static String soapStrToJson(String input)
{
String output;
output = input;
output = output.replace("key=", "\"");
output = output.replace("; value=", "\":");
output = output.replace("; };",",");
output = output.replace("item=anyType{","");
output = output.replace("Map","");
output = output.replace(",}","}");
output = output.replace(", }"," }");
output = output.replace("null","0");
Pattern pattern = Pattern.compile(":(.*?),");
Matcher matcher = pattern.matcher(output);
List<String> wordsToReplace = new ArrayList();
while (matcher.find())
{
String str = matcher.group(0);
if(str.contains("{") || str.contains("["))
continue;
str = str.replace(":", "");
str = str.replace(",", "");
if(str.matches("^-?\\d+$"))
continue;
System.out.println("-->" + str);
wordsToReplace.add(str);
}
for(String str : wordsToReplace)
{
output = output.replace(":"+str+",", ":\""+str+"\",");
}
return output;
}
,並使用此功能爲:那我不使用env.bodyIn SoapObject
parseCategoryJSON(new JSONObject(soapStrToJson(env.getResponse().toString())))
注。
這可能不是所有響應的完美轉換器,因此請根據您的要求修改'String.replace'和Pattern-Matcher。
在上面的例子中,假設countryName =「」那麼它解析它的值爲anyType。字符串countryName = anyType ..任何解決方案? – 2013-12-30 05:59:04