使用SAX解析XML文件,我们都知道需要重载charaters方法
- @Override
- publicvoidcharacters(char[]ch,intstart,153); background-color:inherit; font-weight:bold">intlength)
- throwsSAXException
但是用这个方法会有一点问题,其中ch这个char数组的默认最长长度为2048,如果超过这个长度,将产生一个新的char数组(也是2048长度)来存储数据,于是如果我们需要解析的数据在两个char之间的话(分别在一个的尾部和下一个的头部),那么我将会得到残缺不全的数据,因此我们当我们读到char数据的末尾时,我们需要先暂时存储一下得到的数据,然后补在下一次得到的内容的前面。参考代码如下:
copy