fonction XML relou

fonction XML relou - C++ - Programmation

Marsh Posté le 15-05-2003 à 17:30:35    

Je dois creer un fichier XML a laide de fonctions de la librairie C "libxml". Dans ce fichier, je dois creer des noeuds avec la fonction "xmlNewChild" de prototype:
 
xmlNodePtr xmlNewChild (xmlNodePtr parent,
  xmlNsPtr ns,
  const xmlChar *name,
  const xmlChar *content);
 
Jusque la, pas de pb, ca marche bien...
 
PAr contre, quand je veux concatener 2 chaines pour mettre le resultat dans "name", ca chie...
 
Concretemetn ca donne:
 
char*strtmp=strcat(strtmp, "parameter name=" );
strtmp=strcat(strtmp, listP->Name);
 
if (tmp->ListDataset->DataVal[j] == 0)
{
  tmpdata=xmlNewChild(sdata, NULL, strtmp, "0" );
}
 
Ca compile, ca execute, mais ca marche pas, le fichier XML resultant n'est po complet paskil execute mal la fonction.
 
Je precise que la gestion des listes est bonne, C PO CA LE PB (deja testé et re-testé, c bon), et si jecris:
 
if (tmp->ListDataset->DataVal[j] == 0)
{
  tmpdata=xmlNewChild(sdata, NULL, "test", "0" );
}
 
ca marche bien. C vraiment sur le resultat de strcat ke ca pose un pb...
 
MERCI D'AVANCE

Reply

Marsh Posté le 15-05-2003 à 17:30:35   

Reply

Marsh Posté le 15-05-2003 à 17:35:04    

Code :
  1. char *strtmp=strcat(strtmp, "parameter name=" );


Il faudrait que tu alloues ton strtmp, non?

Reply

Marsh Posté le 15-05-2003 à 18:59:13    

lalloc jlé po ecrite, mais c fé et c bon. Dot part, la fonction strcat est mal utilisée, mais c bon ossi... C juste au nivo du typage ke ca pose un pb...

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed