Read and Write XML Without Loading an Entire Document into Memory : XML Write « XML « C# / C Sharp





Read and Write XML Without Loading an Entire Document into Memory

Read and Write XML Without Loading an Entire Document into Memory
 
using System;
using System.Xml;
using System.IO;
using System.Text;

public class ReadWriteXml {
    private static void Main() {
        FileStream fs = new FileStream("products.xml", FileMode.Create);
        XmlTextWriter w = new XmlTextWriter(fs, Encoding.UTF8);

        w.WriteStartDocument();
        w.WriteStartElement("products");

        w.WriteStartElement("product");
        w.WriteAttributeString("id", "01");
        w.WriteElementString("name", "C#");
        w.WriteElementString("price", "0.99");
        w.WriteEndElement();

        w.WriteEndElement();
        w.WriteEndDocument();
        w.Flush();
        fs.Close();

        Console.WriteLine("Document created.");

        fs = new FileStream("products.xml", FileMode.Open);
        XmlTextReader r = new XmlTextReader(fs);

        while (r.Read()) {
           if (r.NodeType == XmlNodeType.Element) {
                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);
            }
        }
    }
}

           
         
  










Related examples in the same category

1.Create XML document with XmlWriter
2.Writing XML with the XmlWriter ClassWriting XML with the XmlWriter Class
3.Write To XML File
4.Illustrates the XmlTextWriter class
5.Write XML document to console
6.XML Write: comment, start element, end element, attribute
7.Create XmlWriter using the static XmlWriter.Create method.