MSXML newline after node



  • Heiho

    ich hab hier n source bekommen welchen ichs chon fertig ueberarbeitet habe
    in diesen wird mittels MSXML2:: ... und
    ->createElement(...)
    ->appendChild(...)
    nodes erzeugt welche einen anderen angehangen werden:

    die quelldatei sieht so aus

    <parent>
    </parent>
    

    und
    ->createElement(...)
    ->appendChild(...)
    macht daraus

    <parent>
      <child1>child 1</child1><child2>child 2</child2><child3>child 3</child3></parent>
    

    wenn ich noch so mach:
    ->createTextNode(_T("\n\t\t\t\t"))
    ->appendChild(...)
    ->createElement(...)
    ->appendChild(...)
    wird daraus:

    <parent>
      <child1>child 1</child1>
      <child2>child 2</child2>
      <child3>child 3</child3></parent>
    

    soweit habe ich das nun hinbekommen
    wie bekomm ich nu auch das </parent> hinunter?

    wenn ich so mach:
    ->createTextNode(_T("\n\t\t\t\t"))
    ->appendChild(...)
    ->createElement(...)
    ->appendChild(...)
    ->createTextNode(_T("\n\t\t\t"))
    ->appendChild(...)
    wird daraus

    <parent>
      <child1/>child 1
      <child2/>child 2
      <child3/>child 3</parent>
    

    und des ist ja nu absolut falsch

    dank 4 helpings



  • Naja so macht man das auch nicht 😉
    Versuchs mal damit:
    pXMLDom->preserveWhiteSpace = VARIANT_TRUE;
    Vorrausgesetzt pXMLDom ist dein XMLDOMDocument Dingens.
    Wenn du das dann abspeicherst, sollte der das ganz normal formatiert ausgeben (wie du das willst)



  • werds mal ausprobieren - danke {=



  • hab nu einiges rumprobiert, bringt nichts, das ergebnis sieht immer so aus:

    <parent>
        <child1>child 1</child1><child2>child 2</child2><child3>child 3</child3></parent>
    

Anmelden zum Antworten