JSONObject 解析从网络获取的json数据时,java.lang.String cannot be converted to JSONObject解决办法(编码 UTF-8)

时间:2022-03-17 21:44:01


在用org.json.JSONObject 解析从网络获取的json数据时,遇到JSONException: java.lang.String cannot be converted to JSONObject,打印字符串,查看json字符串没有问题,研究了好长时间,终于找到问题,造成问题的原因是在编写json文件的时候,采用utf-8编码,utf8有个BOM格式,去掉这个格式就ok了。如何去掉呢?


方法一:

编写json数据时:

JSONObject 解析从网络获取的json数据时,java.lang.String cannot be converted to JSONObject解决办法(编码 UTF-8)


方法二:


Java代码除掉:


public static 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;
}