我在android上进行常规XML解析,很少遇到这种异常,并且仅在特定手机上会出现。尚未找到此问题的根源。有人知道这可能是什么原因吗?
java.lang.ArrayIndexOutOfBoundsException: src.length=8192 srcPos=1 dst.length=8192 dstPos=0 length=-1
at java.lang.System.arraycopy(Native Method)
at org.kxml2.io.KXmlParser.fillBuffer(KXmlParser.java:1489)
at org.kxml2.io.KXmlParser.skip(KXmlParser.java:1574)
at org.kxml2.io.KXmlParser.parseStartTag(KXmlParser.java:1049)
at org.kxml2.io.KXmlParser.next(KXmlParser.java:369)
at org.kxml2.io.KXmlParser.next(KXmlParser.java:310)
最佳答案
我也有类似的异常(exception)。就我而言,该xml已下载并保存到SD。当我打开文件时,我看到它照原样切出了“中间句子”。似乎下载文件时出错。在这种情况下,删除文件并重新下载解决了该问题,但是为了防止以后出现相同类型的问题,我在读取xml时检查ArrayIndexOutOfBoundsException,并假定在捕获到该文件时该文件已损坏。
显然,这只是目前解决一个模糊问题的简单方法。如果我想出更多的办法,我将更新答案。