Android XML PULL解析遇到的小问题



转载请注明出处:http://blog.csdn.net/wht3xr/article/details/24518395(来自wht3xr荣海游侠的csdn博客)


今天找了个系统是2.3.4的手机玩,测试发现自己的程序以前正常的地方,现在不正常了,让我灰常蛋疼。

问题描述:

服务器返回的数据是XML格式,然后是GBK编码,之前在4.0,4.1.2,4.3的系统解析,一切正常,当我拿2.3.4的机器测试时,问题出现了,XML不能解析,抛出异常:

org.xmlpull.v1.XmlPullParserException: Error parsing document. (position:line -1, column -1) caused by: org.apache.harmony.xml.ExpatParser$ParseException: At line 1, column 0: unknown encoding

纠结了半天,终于找到问题所在:

首先看我XmlPullParser的实例化:

XmlPullParser xmlPull = Xml.newPullParser();

这种实例化,对于UTF-8编码的xml文件解析,不管是2.3的系统还是4.0的系统,一切都正常,但是对于GBK编码的xml文件解析,就会出现上面的错误。(好深的坑啊 ( ̄▽ ̄)")


为了解决上面的问题,XmlPullParser的实例化需要修改一下:

XmlPullParserFactory factory = XmlPullParserFactory.newInstance();
			XmlPullParser xmlPull = factory.newPullParser();

这样就解决了2.3系统无法解析GBK编码的xml的问题。


在工作过程中遇到的问题,希望能帮到大家。


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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值