CSharp examples for XML:XML Document
Read and Write XML Without Loading an Entire Document into Memory
using System;/*w w w . j av a 2s .c o m*/ using System.Xml; using System.IO; using System.Text; public class ReadWriteXml { private static void Main() { FileStream fs = new FileStream("products.xml", FileMode.Create); XmlWriter w = XmlWriter.Create(fs); w.WriteStartDocument(); w.WriteStartElement("products"); w.WriteStartElement("product"); w.WriteAttributeString("id", "1001"); w.WriteElementString("productName", "Car"); w.WriteElementString("productPrice", "0.99"); w.WriteEndElement(); w.WriteStartElement("product"); w.WriteAttributeString("id", "1002"); w.WriteElementString("productName", "test test test"); w.WriteElementString("productPrice", "102.99"); w.WriteEndElement(); // End the document. w.WriteEndElement(); w.WriteEndDocument(); w.Flush(); fs.Close(); Console.WriteLine("Document created. Press Enter to read the document."); fs = new FileStream("products.xml", FileMode.Open); XmlReader r = XmlReader.Create(fs); while (r.Read()) { if (r.NodeType == XmlNodeType.Element) { Console.WriteLine(); Console.WriteLine("<" + r.Name + ">"); if (r.HasAttributes) { for (int i = 0; i < r.AttributeCount; i++) { Console.WriteLine("\tATTRIBUTE: " + r.GetAttribute(i)); } } } else if (r.NodeType == XmlNodeType.Text) { Console.WriteLine("\tVALUE: " + r.Value); } } } }