Bonjour à tous,
je suis sous visual studio 2005 en c++ et j'utilise Tinyxml comme parser pour extraire certaines infos.
Le problème est que je n'arrive pas à accéder au nœud "parameters" de mon fichier dont voici le contenu:
et voici un extrait du code que j'exécute :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7 <?xml version="1.0"? encoding="utf-8?> <scenario> <parameters type ="TestCall" name = "CallTest_01" duration = "60000"/> <configuration protocol = "sip" dest_addresss = "....."/> <codec audio_codec = "g.711a" video_codec = "h.264" data_codec = "t120"/> <bandwith network_up = "512 kbits/s" network_down = "1024 kbits/s"/> </scenario>
et cette ligne me renvoi un élément NULL
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35 DebugLog(INF, "%s", file); TiXmlDocument doc(file); if(!doc.LoadFile()) { DebugLog (ERR, "Loading file failed! :("); DebugLog(ERR,"%s" ,"%s", doc.ErrorId(),doc.ErrorDesc()); return res = WRP_ERROR; } else { if(!doc.Parse(file)) { DebugLog(ERR, "Parsing of file failed"); res = WRP_ERROR; } TiXmlHandle hdl(&doc); TiXmlElement *elem = hdl.FirstChildElement("scenario").FirstChildElement("parameters").Element(); DebugLog(INF, "The first element of the tree is: %s", elem); if(!elem) { DebugLog (ERR, "Element doesn't exist"); return res = WRP_ERROR; } else { if( string(elem->Attribute("type")) == "TestCall") { strcpy(m_calltest.testName, elem->Attribute("name")); m_calltest.duration = (int)elem->Attribute("duration"); ... DebugLog(INF, "The first element of the tree is: %s", elem);
Votre aide sera la bienvenue!
Cordialement
Partager