Bonjour à tous,

J'essaie d'enregistrer un fichier xml à l'aide de librairie TinyXML2 et je voudrais ajouter la Déclaration. J'y arrive seulement elle devrait se trouver sur la première ligne mais elle est comme ceci :

Code XML : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
<Language>
    <Table ElementCount="3">
        <Element Key="Time in the Chronometer" Translation="Temps dans le Chronomètre"/>
        <Element Key="Time in the Temporizer" Translation="Temps dans le Temporisateur"/>
        <Element Key="We start !" Translation="C&apos;est un départ !"/>
    </Table>
</Language>
 
<?xml version="1.0" encoding="UTF-8"?>
Voici la méthode responsable :
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
void LanguageSystem::SaveTableFile()
{
    std::string FullPath = PathName + FileName;
    const char* PathFileName = FullPath.c_str();
    tinyxml2::XMLDocument LanguageTable;
 
    LanguageTable.InsertEndChild(LanguageTable.NewDeclaration());
    LanguageTable.SetBOM( true );
 
    tinyxml2::XMLNode * pRoot = LanguageTable.NewElement("Language");
    LanguageTable.InsertFirstChild(pRoot);
 
    tinyxml2::XMLElement * pElement = LanguageTable.NewElement("Table");
    pElement->SetAttribute("ElementCount", Table.size());
 
    Iter = Table.begin();
 
    while(Iter != Table.end())
    {
    	tinyxml2::XMLElement * pListElement = LanguageTable.NewElement("Element");
    	std::string Key = Iter->first;
    	std::string Translation = Iter->second;
        pListElement->SetAttribute("Key", Key.c_str());
        pListElement->SetAttribute("Translation", Translation.c_str());
 
        pElement->InsertEndChild(pListElement);
        Iter++;
    }
 
    pRoot->InsertEndChild(pElement);
    LanguageTable.SaveFile(PathFileName);
 
}
Je fais probablement quelque chose de travers mais quoi ? Ou alors je viens de tomber sur un bogue ?

Merci à l'avance.

StarBootics