Tuesday, May 11, 2010

XML Manipulation in C# .NET

XML Insert, Update ,Delete Example


Source Code:
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using System.Xml;


namespace xmlupdate
{
public partial class Form1 : Form
{
public static int ii =0;
public static int i = 0;
public static int j = 0;
public static int x = 0;
public static int flag=0;
string[] str1 = new string[20];


XmlTextWriter xwr;
XmlDocument doc = new XmlDocument();
XmlNodeList n1;


public Form1()
{
InitializeComponent();
}


private void Form1_Load(object sender, EventArgs e)
{
xwr = new XmlTextWriter("sample123.xml", null);
xwr.WriteStartDocument();


xwr.WriteStartElement("TasksMain");
xwr.Formatting = Formatting.Indented;
xwr.WriteComment("This is comment Line");
}


//create
private void button1_Click(object sender, EventArgs e)
{
if ((textBox1.Text == "") || (textBox2.Text == "") || (textBox3.Text == ""))
label4.Text = "please enter the values";
else
{
xwr.WriteStartElement("Tasks");
xwr.WriteElementString("name", textBox1.Text);
xwr.WriteElementString("age", textBox2.Text);
xwr.WriteElementString("sex", textBox3.Text);
xwr.WriteEndElement();
label4.Text = "Record created success fully";
textBox1.Text = "";
textBox2.Text = "";
textBox3.Text = "";
}


}
private void Form1_FormClosed(object sender, FormClosedEventArgs e)
{
if (flag != 1)
{
xwr.WriteEndElement();
xwr.WriteEndDocument();
xwr.Close();
}


}




//display
private void button2_Click(object sender, EventArgs e)
{
//xwr.WriteEndElement();
//xwr.WriteEndDocument();
//xwr.Close();
flag = 1;


doc.Load("sample123.xml");


XmlNodeReader reader = new XmlNodeReader(doc);
while (reader.Read())
{
switch (reader.NodeType)
{
case XmlNodeType.Text:


str1[ii] = reader.Value;
ii++;
break;
}


}


for (; i < 3; i++)
{
textBox1.Text = str1[0];
textBox2.Text = str1[1];
textBox3.Text = str1[2];
}
button2.Enabled = false;


reader.Close();
}


//display next
private void button4_Click(object sender, EventArgs e)
{
try
{


textBox1.Text = str1[x];
textBox2.Text = str1[x + 1];
textBox3.Text = str1[x + 2];
x += 3;


}
catch (Exception e1)
{
MessageBox.Show("" + e1);
button2.Enabled = false;
}
}


//append
private void button3_Click(object sender, EventArgs e)
{




// XmlDocument doc1 = new XmlDocument();


//doc1.Load("ooty1.xml");


if ((textBox1.Text == "") || (textBox2.Text == "") || (textBox3.Text == ""))


label4.Text = "please enter the values";


//doc.Load("sample123.xml");


//XmlElement MainTasks = doc.CreateElement("TasksMain22");


XmlElement newTasks = doc.CreateElement("Tasks");


XmlElement newname = doc.CreateElement("name");


newname.InnerText = textBox1.Text;


XmlElement newage = doc.CreateElement("age");


newage.InnerText = textBox2.Text;


XmlElement newgen = doc.CreateElement("sex");


newgen.InnerText = textBox3.Text;


newTasks.AppendChild(newname);
newTasks.AppendChild(newage);
newTasks.AppendChild(newgen);
doc.DocumentElement.AppendChild(newTasks);
doc.Save("sample123.xml");
label4.Text = "Record Updated Successfully";
button9.PerformClick();


//MainTasks.AppendChild(newTasks);


}


//delete
private void button5_Click(object sender, EventArgs e)
{
string match;


match = textBox4.Text;


XmlNodeList nodeList = doc.SelectNodes("TasksMain");


n1 = doc.GetElementsByTagName("Tasks");


int flaggy = 0;


foreach (XmlNode node in n1)
{
if ( match == node.SelectSingleNode("name").InnerText)
{
flaggy = 1;
doc.DocumentElement.RemoveChild(node);
doc.Save("sample123.xml");
MessageBox.Show("the node deleted");
//textBox1.Text = node.SelectSingleNode("name").InnerText;
//textBox2.Text = node.SelectSingleNode("age").InnerText;
//textBox3.Text = node.SelectSingleNode("sex").InnerText;


}
if (flaggy == 1)
break;
}


}




//writing finished


private void button6_Click(object sender, EventArgs e)
{
xwr.WriteEndElement();
xwr.WriteEndDocument();
xwr.Close();
button6.Enabled = false;
button1.Enabled = false;
}


//clear
private void button9_Click(object sender, EventArgs e)
{
textBox1.Text = "";
textBox2.Text = "";
textBox3.Text = "";


}


//find..
private void button7_Click(object sender, EventArgs e)
{
XmlNodeList nodeList = doc.SelectNodes("TasksMain");


n1 = doc.GetElementsByTagName("Tasks");
int flaggy = 0;


foreach (XmlNode node in n1)
{
if(textBox4.Text == node.SelectSingleNode("name").InnerText)
{
flaggy = 1;
textBox1.Text = node.SelectSingleNode("name").InnerText;
textBox2.Text = node.SelectSingleNode("age").InnerText;
textBox3.Text = node.SelectSingleNode("sex").InnerText;


}
if (flaggy == 1)
{
break;
}


}


if(flaggy == 0)
MessageBox.Show("Sorry Record not Found");
}


private void button8_Click(object sender, EventArgs e)
{
this.Close();
}
}
}

No comments:

Post a Comment