How to create an XML file in C#

XML, being a platform-independent language, provides the advantage of enabling the seamless transfer and utilization of information across diverse platforms and operating systems. This means that XML files, once created in one platform, can be effortlessly utilized and accessed in other platforms as well, ensuring interoperability and compatibility across different environments.

XmlTextWriter Class

To create a new XML file in C#, the XmlTextWriter Class proves instrumental. This class requires the FileName and Encoding parameters as arguments and offers additional options for specifying formatting details. In the provided C# source code, an XML file named "product.xml" is created, and subsequently, four rows are added to the file.

Full Source C#
using System; using System.Data; using System.Windows.Forms; using System.Xml; namespace WindowsApplication1 { public partial class Form1 : Form { public Form1() { InitializeComponent(); } private void button1_Click(object sender, EventArgs e) { XmlTextWriter writer = new XmlTextWriter("product.xml", System.Text.Encoding.UTF8); writer.WriteStartDocument(true); writer.Formatting = Formatting.Indented; writer.Indentation = 2; writer.WriteStartElement("Table"); createNode("1", "Product 1", "1000", writer); createNode("2", "Product 2", "2000", writer); createNode("3", "Product 3", "3000", writer); createNode("4", "Product 4", "4000", writer); writer.WriteEndElement(); writer.WriteEndDocument(); writer.Close(); MessageBox.Show("XML File created ! "); } private void createNode(string pID, string pName, string pPrice, XmlTextWriter writer) { writer.WriteStartElement("Product"); writer.WriteStartElement("Product_id"); writer.WriteString(pID); writer.WriteEndElement(); writer.WriteStartElement("Product_name"); writer.WriteString(pName); writer.WriteEndElement(); writer.WriteStartElement("Product_price"); writer.WriteString(pPrice); writer.WriteEndElement(); writer.WriteEndElement(); } } }

Output of the above source code :