求助,AndroidXML解析问题
用SAX进行XML的解析 出现如下错误,调试了很久不知道是哪里出错了。
08-24 14:11:53.859: WARN/System.err(13044): org.apache.harmony.xml.ExpatParser$ParseException: At line 1, column 5146: partial character
08-24 14:11:53.867: WARN/System.err(13044): at org.apache.harmony.xml.ExpatParser.finish(ExpatParser.java:553)
08-24 14:11:53.867: WARN/System.err(13044): at org.apache.harmony.xml.ExpatParser.parseDocument(ExpatParser.java:483)
08-24 14:11:53.867: WARN/System.err(13044): at org.apache.harmony.xml.ExpatReader.parse(ExpatReader.java:320)
08-24 14:11:53.867: WARN/System.err(13044): at org.apache.harmony.xml.ExpatReader.parse(ExpatReader.java:277)
哪位大虾能帮帮我,在线等。
代码如下
public class XmlSpotItemsHandler extends DefaultHandler {
private String tagName ;
private ArrayList<String> spotItems ;
public XmlSpotItemsHandler(){
tagName = "result";
spotItems = new ArrayList<String>();
}
@Override
public void startDocument() throws SAXException {
// TODO Auto-generated method stub
super.startDocument();
}
@Override
public void startElement(String uri, String localName, String qName,
Attributes attributes) throws SAXException {
// TODO Auto-generated method stub
super.startElement(uri, localName, qName, attributes);
tagName = localName;
}
@Override
public void endElement(String uri, String localName, String qName)
throws SAXException {
// TODO Auto-generated method stub
super.endElement(uri, localName, qName);
}
@Override
public void characters(char[] ch, int start, int length)
throws SAXException {
// TODO Auto-generated method stub
super.characters(ch, start, length);
if(tagName.equalsIgnoreCase("spotname")){
String spotname = new String(ch,start,length);
spotItems.add(spotname);
}
//System.out.println(spotItems.size());
}
@Override
public void endDocument() throws SAXException {
// TODO Auto-generated method stub
super.endDocument();
System.out.println("what happend to parse");
}
public ArrayList<String> getValues(){
System.out.println("spotItems"+spotItems.isEmpty());
return spotItems;
}
}