开发者社区> 问答> 正文

json数据解析问题:json串头部出现字符:"\ufeff" 解决方法-安卓报错

json数据解析问题:json串头部出现字符:"\ufeff" 解决方法

org.json.JSONException: Value  of type java.lang.String cannot be converted to JSONObject

解析服务器返回 的json格式数据时,我们可能会发现,数据格式上是没有问题的,但是仔细对比会发现,在json串头部发现字符:"\ufeff"

展开
收起
montos 2020-05-29 09:55:09 939 0
1 条回答
写回答
取消 提交回答
  • 客户端解决方案:

    /** 
    * 异常信息:org.json.JSONException: Value  of type java.lang.String cannot be converted to JSONObject 
    * json串头部出现字符:"\ufeff" 解决方法
    * @param data 
    * @return 
    */
    public static final String removeBOM(String data) {    
    if (TextUtils.isEmpty(data)) {        
             return data;    
    }    
    if (data.startsWith("\ufeff")) {        
            return data.substring(1);    
           } 
    else {        
            return data;    
            }
    }
    

    服务器端解决方案: 将输出此json的php源码重新用editplus之类用utf-8无BOM的编码保存。不要用windows系统自带的记事本编辑php源码,这个BOM就是记事本这些windows自带的编辑器引入的。

    2020-05-29 19:30:50
    赞同 展开评论 打赏
问答排行榜
最热
最新

相关电子书

更多
58同城Android客户端Walle框架演进与实践之路 立即下载
Android组件化实现 立即下载
蚂蚁聚宝Android秒级编译——Freeline 立即下载

相关镜像