android无法解析php的json数据

王林
王林 原创
2023-02-27 16:20:01 1954浏览

错误原因:

BOM报头问题。服务器端是php,返回的接送数据’{‘前有bom报头,java读的时候把报头直接当作文件内容读,然后就会出错。

什么是BOM报头?

BOM报头又叫UTF-8签名,其实UTF-8 的BOM对UFT-8没有作用,是为了支援UTF-16、UTF-32才加上的BOM。

BOM签名的意思就是告诉编辑器当前文件采用何种编码,但是BOM虽然在编辑器中不显示,但是会产生输出,就像多了一个空行。它是一串隐藏的字符,用于让记事本等编辑器识别这个文件是否以UTF-8编码。

解决方法:

java、android客户端等可以通过代码过滤掉bom,然后再解析。

/**
 * 去除bom报头
 */
public static String formatString(String s) {
    if (s != null) {
          s = s.replaceAll("\ufeff", "");
    }
    return s;
}

推荐教程:PHP视频教程

以上就是android无法解析php的json数据的详细内容,更多请关注php中文网其它相关文章!

声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn核实处理。