android 解析PHP,android无法解析php的json数据怎么办

当Android应用尝试解析由PHP返回的JSON数据时,如果PHP返回的数据前带有BOM报头,会导致解析失败。BOM报头是UTF-8编码的一种标志,但在某些情况下可能会引发解析错误。为解决此问题,可以在Java或Android客户端的代码中过滤掉BOM报头,然后再进行JSON解析。通过在字符串处理函数中移除``字符,可以有效地去除BOM报头,从而正常解析JSON数据。
摘要由CSDN通过智能技术生成

android无法解析php的json数据怎么办

发布时间:2020-10-12 16:30:57

来源:亿速云

阅读:95

作者:小新

小编给大家分享一下android无法解析php的json数据怎么办,希望大家阅读完这篇文章后大所收获,下面让我们一起去探讨吧!

错误原因:

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;

}

看完了这篇文章,相信你对android无法解析php的json数据怎么办有了一定的了解,想了解更多相关知识,欢迎关注亿速云行业资讯频道,感谢各位的阅读!

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值