Saturday, December 27, 2008

How to read XML from any given link

This task was assigned to me , and i wrote a simple function to accomplish this in C#.Net 2.0
here is the code

private XmlDocument GetXMLDOC(string Path)
{


XmlDocument xdoc = new XmlDocument();
System.Net.WebClient wc = new System.Net.WebClient();
StreamReader sr = null;
string xml = null;
try
{
sr = new StreamReader(wc.OpenRead(Path));
xml = sr.ReadToEnd();
sr.Close();
sr.Dispose();
wc.Dispose();
xdoc.LoadXml(xml);
return xdoc;
}
catch (Exception ex)
{
return null;
}
}



Now you get an XML Document in which XML data is loaded.
To traverse through this XML document we need a XML List and an XML node

string Pagepath = txtLink.Text;

XmlDocument xdoc = GetXMLDOC(Pagepath);

if (xdoc != null)
{
XmlNodeList nodeList = xdoc.GetElementsByTagName("any-XML-tag");

XmlNode Inode = nodeList[0];
}


when we get the XML node , we can get its data by using node.innerText property like this.

string mydata = Inode.InnerText;

thats it... you can use this generic method to fetch all kinds of records from any Xml file if you are given its link...

if you know any other and simpler method for the same purpose..kindly share it..
peace.

No comments:

Post a Comment

Testing Challenge

Can you find more than 20 defects in the below image? Write your defects in the comments section.