我在JSON验证中遇到了一些问题。我正在使用的代码是
import net.sf.json.JSONException;
import net.sf.json.JSONObject;
String stringToValidate="{'customer':[{'condition':'Matches','value':'nordstrom,nordstromrack,neimanmarcus,neimanmarcuslastcall,tjmaxx,macys,dsw,saksfifthavenue,off5th,bananarepublic,jcrew,bloomingdales'}],'notcustomer':[{'condition':'Matches','value':'neimanmarcuslastcall'}],'daterange':[{'condition':'In the last','value':'6 months'}]}";
try {
System.out.println(stringToValidate);
JSONObject.fromObject(stringToValidate);
/* try {
Map<String, Object> tsMap = new Json2Java().getMap(stringToValidate);
} catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
return false;
}*/
System.out.println(true);
} catch (JSONException je) {
je.printStackTrace();
System.out.println(false);
}
它正在验证语法正常。如您所见,我使用单个逗号('
)作为我的标记名称,例如'customer':.....
。所以我的问题是,如果我从标签中删除此'
,它仍然打印为true,我想在这种情况下使条件失败。