Write XML DOM : DOM « XML « Visual C++ .NET

Home
Visual C++ .NET
1.2D
2.Class
3.Collections
4.Data Type
5.Database ADO.net
6.Delegate
7.Development
8.File Directory
9.Function
10.Generics
11.GUI Form
12.Language Basics
13.Network
14.Reflection
15.Security
16.Statement
17.Structure
18.Thread
19.XML
C / ANSI-C
C Tutorial
C++
C++ Tutorial
Visual C++ .NET » XML » DOM 
Write XML DOM
 

#include "stdafx.h"
using namespace System;
using namespace System::Xml;

XmlElement ^CreateMonster(XmlDocument ^doc){
    XmlElement ^skeleton = doc->CreateElement("M");

    XmlElement ^name = doc->CreateElement("N");
    name->AppendChild(doc->CreateTextNode("S"));
    skeleton->AppendChild(name);

    XmlElement ^hitdice = doc->CreateElement("H");
    XmlAttribute ^att = doc->CreateAttribute("D");
    att->Value = "1";
    hitdice->Attributes->Append(att);
    att = doc->CreateAttribute("Default");
    att->Value = "3";
    hitdice->Attributes->Append(att);
    skeleton->AppendChild(hitdice);

    XmlElement ^weapon = doc->CreateElement("W");
    att = doc->CreateAttribute("N");
    att->Value = "2";
    weapon->Attributes->Append(att);
    att = doc->CreateAttribute("D");
    att->Value = "1";
    weapon->Attributes->Append(att);
    weapon->AppendChild(doc->CreateTextNode("C"));
    skeleton->AppendChild(weapon);

    return skeleton;
}

void main()
{
    XmlDocument ^doc = gcnew XmlDocument();

    try
    {
        doc->Load("a.xml");
        XmlNode ^root = doc->DocumentElement; 

        XmlNode ^child = root->FirstChild->NextSibling;

        root->InsertAfter(CreateMonster(doc), child);
 
        doc->Save("New.xml");
    }
    catch (Exception ^e)
    {
        Console::WriteLine("Error Occurred: {0}", e->Message );
    }
}

   
  
Related examples in the same category
1.Recursive navigation of the DOM tree
2.Update XML DOM
www.java2java.com | Contact Us
Copyright 2009 - 12 Demo Source and Support. All rights reserved.
All other trademarks are property of their respective owners.