****************Example of Program*************************
XmlTextWriter myXmlTextWriter = new XmlTextWriter(@"D:\temp\Test\Test.xml", null);
myXmlTextWriter.Formatting = Formatting.Indented;
myXmlTextWriter.WriteComment("This file represents another fragment of a book store inventory database");
myXmlTextWriter.WriteStartElement("ImportSession");
myXmlTextWriter.WriteStartElement("Batches");
myXmlTextWriter.WriteStartElement("Batch", null);
myXmlTextWriter.WriteAttributeString("BatchClassName", "Das-Rerun");
myXmlTextWriter.WriteAttributeString("Name", "Das-Rerun-000001");
myXmlTextWriter.WriteAttributeString("Priority", "5");
myXmlTextWriter.WriteAttributeString("Processed", "0");
myXmlTextWriter.WriteStartElement("BatchFields");
myXmlTextWriter.WriteStartElement("BatchField");
myXmlTextWriter.WriteAttributeString("Name", "Buyer Name");
myXmlTextWriter.WriteAttributeString("Value", "Test Buyer");   
myXmlTextWriter.WriteEndElement();
myXmlTextWriter.WriteEndElement();
myXmlTextWriter.WriteStartElement("Documents");
myXmlTextWriter.WriteStartElement("Document");
myXmlTextWriter.WriteAttributeString("FormTypeName", "DAS-Rerun");
myXmlTextWriter.WriteStartElement("IndexFields");
myXmlTextWriter.WriteStartElement("IndexField");
myXmlTextWriter.WriteAttributeString("Name", "Document Type");
myXmlTextWriter.WriteAttributeString("Value", "Contract");
myXmlTextWriter.WriteEndElement();
myXmlTextWriter.WriteStartElement("IndexField");
myXmlTextWriter.WriteAttributeString("Name", "Date");
myXmlTextWriter.WriteAttributeString("Value", "7/8/2009");
myXmlTextWriter.WriteEndElement();
myXmlTextWriter.WriteStartElement("IndexField");
myXmlTextWriter.WriteAttributeString("Name", "Buyer Name");
myXmlTextWriter.WriteAttributeString("Value", "Tester");
myXmlTextWriter.WriteEndElement();
myXmlTextWriter.WriteEndElement();
myXmlTextWriter.WriteStartElement("Pages");
myXmlTextWriter.WriteStartElement("Page");
myXmlTextWriter.WriteAttributeString("ImportFileName", @"C:\Temp\Test\a.txt");
myXmlTextWriter.WriteEndElement();
myXmlTextWriter.WriteStartElement("Page");
myXmlTextWriter.WriteAttributeString("ImportFileName", @"C:\Temp\Test\b.txt");
myXmlTextWriter.WriteEndElement();
myXmlTextWriter.WriteEndElement();
myXmlTextWriter.WriteEndElement();
myXmlTextWriter.WriteEndElement();
myXmlTextWriter.WriteEndElement();
myXmlTextWriter.WriteEndElement();
myXmlTextWriter.WriteEndElement();
myXmlTextWriter.Flush();
myXmlTextWriter.Close();




****************Creating new xml file************************
XmlTextWriter newXmlFile = new XmlTextWriter(Give path and name of xml file to create,System.Text.Encoding.Default);
newXmlFile.WriteStartDocument();
//creating the name of the main node
newXmlFile.WriteStartElement("Start","");
//creating child nodes
newXmlFile.WriteElementString("First");
newXmlFile.WriteFullEndElement();
newXmlFile.WriteEndElement();
newXmlFile.Flush();
newXmlFile.Close();

************************Insert data to xml file************************
// Create xml dom
XmlDocument XMLDom = new XmlDocument();
//load your xml file
XMLDom.Load(@"path of your xml file");
//Select main node
XmlNode newXMLNode = XMLDom.SelectSingleNode("/Main node name");
//get the node where you want to insert the data
XmlNode childNode = XMLDom.CreateNode(XmlNodeType.Element,"your node name where you want to insert data","");
//In the below step "name" is your node name and "sree" is your data to insert
XmlAttribute newAttribute = XMLDom.CreateAttribute("name","sree","");
childNode.Attributes.Append(newAttribute);
newXMLNode.AppendChild(childNode);

************************Modify data in xml file************************
// Select childnode where you want to modify data. The following step "PNode" is parent node and "Node1" is the one which you want to update the data

XmlNodeList newXMLNodes = XMLDom.SelectNodes("/PNode/Node1");
foreach(XmlNode newXMLNode in newXMLNodes)
//Updating data where "Node1" is "sree" with "kambham"
if(newXMLNode.InnerText == "sree")
newXMLNode.InnerText = "kambham";
XMLDom.Save("Path of your XML file");
XMLDom = null;
//The above step updates xml file where ever it finds "sree" with "kambham"

************************Delete data in xml file************************
XmlNodeList newXMLNodes = XMLDom.SelectNodes("/PNode/Node1");
foreach(XmlNode newXMLNode in newXMLNodes)
if(newXMLNode.InnerText == "sree")
newXMLNode.ParentNode.RemoveChild(newXMLNode);
XMLDom.Save("Path of your XML file");
XMLDom = null;
//The above step deletes data in xml file where ever it finds "sree"

Comments (0)