Android 从字符串响应中提取字符串

Android 从字符串响应中提取字符串,android,json,string,substring,Android,Json,String,Substring,我有以下字符串响应。我想从中提取macid和其他字段,如Version、Type、devIP等 Response ={ "Version" : “1.10", "Type" :"'xyzTYPE", "MaCID" :"ABCD1F2G3900", "devIP" : "'192.168.1.100", "Signal": "-66", "AreaName" :"'power", "SubType" :"wifidev", "'BuiIdTime" : "11:50:47",

我有以下字符串响应。我想从中提取macid和其他字段,如Version、Type、devIP等

Response ={ 
"Version" : “1.10", 
"Type" :"'xyzTYPE", 
"MaCID" :"ABCD1F2G3900", 
"devIP" : "'192.168.1.100", 
"Signal": "-66", 
"AreaName" :"'power", 
"SubType" :"wifidev", 
"'BuiIdTime" : "11:50:47", 
"'BuiIdDate": "'Nov 2 2018" 
}
虽然我已经用这种方式实现了它

String macID=result.substring(result.indexOf(“macID”)+11,result.indexOf(“devIP”)-4)


我想知道是否还有其他复杂的方式可以做到这一点。

您的响应看起来像JSON, 因此对于结果中的json响应

 JSONObject lsubObject= new JSONObject(result);
    String MaCID =lsubObject.getString("MaCID");

您的
响应是JSON吗?最好的方法是为响应创建类并将响应反序列化为对象格式。当然有。你的方法很脆弱。看看JSON解析器。