using System;
using System.Data;
using System.Configuration;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;
//IO: In & Output (werken met bestanden)
//Xml: om de xml-classes te kunnen gebruiken
using System.IO;
using System.Xml;
public partial class _Default : System.Web.UI.Page
{
//Declareren variabelen
XmlTextWriter xmlSchrijven;
XmlTextReader xmlLezen;
string pad, element, res;
protected void Page_Load(object sender, EventArgs e)
{
//pad instellen + naam van document opgeven
//zelf te wijzigen indien nodig/gewenst
pad = "H:\\leden.xml";
}
protected void schrijfxml_Click(object sender, EventArgs e)
{
//nieuwe instance van de XmlTextWriter maken, en instellen naar het opgegeven pad
xmlSchrijven
= new XmlTextWriter
(pad,
null); //zorgen dat als er nieuwe elementen bijkomen dat een nieuwe regel en tab worden gebruikt
xmlSchrijven.Formatting = Formatting.Indented;
//schrijf het eerste regeltje van een xml-document (<?xml version="1.0"?>)
xmlSchrijven.WriteStartDocument();
//element 'leden' schrijven
xmlSchrijven.WriteStartElement("leden");
//element 'lid' schrijven
xmlSchrijven.WriteStartElement("lid");
//element 'naam' en 'leeftijd' maken en waardes meegeven
//deze waardes kunnen ook variabelen zijn
xmlSchrijven.WriteElementString("naam", "titjes");
xmlSchrijven.WriteElementString("leeftijd", "21");
//element 'lid'afsluiten
xmlSchrijven.WriteEndElement();
//nieuw element 'lid' aanmaken
xmlSchrijven.WriteStartElement("lid");
//zelfde als hierboven
xmlSchrijven.WriteElementString("naam", "koen");
xmlSchrijven.WriteElementString("leeftijd", "19");
xmlSchrijven.WriteEndElement();
//de eerste begintag, in dit geval 'leden' sluiten
xmlSchrijven.WriteFullEndElement();
//de Writer sluiten
xmlSchrijven.Close();
//controleren of het bestand wel degelijk bestaat en een gepaste melding meegeven
if (File.Exists(pad))
{
Response.Write("<h4>XML aangemaakt!</h4>");
}
else
{
Response.Write("<h4>Fout bij aanmaken XML!</h4>");
}
}
protected void leesxml_Click(object sender, EventArgs e)
{
//controleren of het bestand bestaat
if (!File.Exists(pad))
{
//indien niet: foutmelding geven
Response.Write("<h4>XML bestaat niet, eerst aanmaken!</h4>");
}
else
{
//als het wel bestaat:
//nieuwe instance van een XmlTextReader maken, met als pad waar het daarvoor is aangemaakt
xmlLezen
= new XmlTextReader
(pad
); //beginnen lezen
xmlLezen.Read();
//zolang er gelezen wordt
while (xmlLezen.Read())
{
//als de regel dat gelezen wordt van het type 'element' is: de naam opslaan in een variabele
if (xmlLezen.NodeType == XmlNodeType.Element)
{
//naam oplsaan in de variabele
element = xmlLezen.Name;
}
//anders, als het van het type text is:
else if(xmlLezen.NodeType == XmlNodeType.Text)
{
//de waarde in een var steken met daarvoor de naam van het element
res = element + ": " + xmlLezen.Value.ToString() + "<br />";
//elke keer de regel weergeven
Response.Write(res);
}
}
//stoppen met lezen
xmlLezen.Close();
}
}
}