Wednesday, February 3, 2010

Traverse XML in .Net


public void ExtractNodes()
{
string HoldTheOrder = "";
//HttpPostedFile myFile = DatFile.PostedFile;
//if ((myFile.FileName == null) || (myFile.FileName.Equals("")))
//{
// lblConfirm.Text = "Path is not correct!";
// return;
//}
string DestinationPath = @"C:\XMLOutput.txt";  //// create a file for output
SWrtr = new StreamWriter(DestinationPath);
XmlTextReader XMLRdr = new XmlTextReader("c:\\gt.xml"); // path of the xml file
bool Flag;
while (XMLRdr.Read())
{
Flag = false;
switch (XMLRdr.NodeType)
{
case XmlNodeType.Element:
Flag = true;
HoldTheOrder = HoldTheOrder + ((HoldTheOrder.Length > 0) ? " -> " : "") + XMLRdr.Name;
break;
case XmlNodeType.Text:
break;
case XmlNodeType.EndElement:
Flag = false;
if (HoldTheOrder.LastIndexOf(" -> " + XMLRdr.Name) > -1) HoldTheOrder = HoldTheOrder.Substring(0, HoldTheOrder.LastIndexOf(" -> " + XMLRdr.Name));
break;
}
if (Flag)
{
SWrtr.Write(HoldTheOrder);
Response.Write("
"
 + HoldTheOrder);
SWrtr.WriteLine("");
}
}
//lblConfirm.Text = "File Successfully Creadted at [" + DestinationPath + "]";
SWrtr.Dispose();
SWrtr = null;
XMLRdr.Close();
XMLRdr = null;
}

No comments:

Post a Comment