2010-07-07 7 views
-1

Je suis en train d'analyser un fichier XML dont les données proviennent d'une chaîne. je suis en utilisant le code suivant pour l'analyse syntaxique: -Analyse XML à partir de la chaîne

DocumentBuilderFactory docBuilderFactory = DocumentBuilderFactory 
    .newInstance(); 
    DocumentBuilder docBuilder = docBuilderFactory 
    .newDocumentBuilder(); 
    docBuilder.isValidating(); 
    ByteArrayInputStream ba= new ByteArrayInputStream(connect.content.getBytes("UTF-8")); 
    doc = docBuilder.parse(ba); 
    doc.getDocumentElement().normalize(); 
    NodeList locationStatus = doc.getElementsByTagName("street"); 
    for (int i = 0; i < locationStatus.getLength(); i++) { 
     Node locationValue = locationStatus.item(i).getChildNodes().item(0); 
     _node.addElement(locationValue.getNodeValue()); 
    }  
    String [] nodeString = new String[_node.size()]; 
    _node.copyInto(nodeString); 
    add(new LabelField(nodeString.length+"")); 

Mais ce code donne erreur, je ne pas où l'erreur est.

Aidez-moi s'il vous plaît

Merci à l'avance

+2

Quels sont les détails de l'erreur? Avez-vous une trace de pile? –

+1

Pouvez-vous publier le message d'erreur et la trace de la pile? –

+1

Il serait également utile de voir le XML que vous essayez d'analyser –

Répondre

0

Utilisez XStream ou JAXB

+0

Est-ce encore disponible sur BlackBerry? –

0

ont u essayé de cette façon?

SAXParserImpl saxparser = new SAXParserImpl(); 
ResponseHandler handler = new ResponseHandler(); 
ByteArrayInputStream stream = new ByteArrayInputStream(xmlresp.getBytes()); 

public class ResponseHandler extends DefaultHandler 
{ 
    public void startElement(String uri, String localName, 
          String qName,Attributes attributes) {} 
public void characters(char[] ch, int start, int length) 
     {   
      tempVal = new String(ch, start, length); 
     } 
public void endElement(String uri, String localName, 
         String qName) throws SAXException {} 
}