2010-07-20 3 views
1

J'ai lu le tutoriel sur XML parsing dans Bada. Mais je ne veux pas utiliser un fichier. J'ai besoin d'analyser mon XML à partir d'un Osp :: Base :: String. Des idées quelles méthodes dois-je utiliser? Jusqu'à présent, je l'ai remplacéAnalyser XML à partir de String en utilisant XPath dans Bada?

xpathCtx = xmlXPathNewContext(doc); 
if(xpathCtx == NULL) { 
    AppLog("Error: unable to create new XPath context"); 
    xmlFreeDoc(doc); 
    return(E_IO); 
} 

avec

xpathCtx = (xmlXPathContextPtr) xmlXPathNewCString("<?xml version=\"1.0\" encoding=\"ISO-8859-1\"?><title lang=\"en\">XQuery Kick Start</title><title lang=\"en\">Learning XML</title>"); 

Mais l'émulateur se ferme tout simplement.

Merci.

Répondre

1

Votre code est incorrect car vous ne pouvez pas convertir de xmlXPathObjectPtr en xmlXPathContextPtr: ce sont des structures différentes.

Le code donné dans le tutoriel est juste, il suffit d'utiliser

xmlDocPtr xmlReadDoc (const xmlChar * cur, const char * URL, const char * encoding, int options)

au lieu de

xmlReadFile(..)

Pour comprendre comment utiliser cette fonction un coup d'oeil à la documentation et à les exemples sur le site Web libXML2.

+0

Vous avez raison mon ami. Je souhaite juste que vous ayez répondu à ma question correctement avant que je résolve le problème moi-même. L'ironie ici est que je ne suis pas en train d'analyser mon XML à partir d'une chaîne mais d'un fichier, comme dans le tutoriel. J'espère que cela ne diminuera pas grandement les performances de ma application. –

Questions connexes