Value  of type java.lang.String cannot be converted to JSONObject 错误解决

JSONObject obj = new JSONObject(jsonStr);
一个简简单的json解析居然报错!!并且json字符串没错!!!!

这个情况百分百是因为UTF-8的BOM头。

解决办法是:

 public String JSONTokener(String in) {
	        // consume an optional byte order mark (BOM) if it exists
	         if (in != null && in.startsWith("\ufeff")) {
	            in = in.substring(1);
	       }
	      return in;
	 }
JSONObject obj = new JSONObject(JSONTokener(jsonStr)); 


你可能感兴趣的:(java)