Friday, March 26, 2010

How to retrieve specific node in an XML file using C#.Net

Here I hv given one of the problem with solution, when I was trying to retrieve specific node of xml file.
Suppose that we have result1.xml file 
<?xml version="1.0" standalone="yes" ?>
<NewDataSet>

  <tblResult>

  <SubmittalId>1</SubmittalId>

  </tblResult>

  <tblResult>

  <Decision>Declined</Decision>

  </tblResult>

  </NewDataSet>

If u want retrieve each node (SubmittalId) & (Decision) separately, we need to use GetElementsByTagName method & XmlAttributeCollection class
private void Button1_click(object sender, EventArgs e)
        {
                        string fdecision = "";
            int subid = 0;
XmlNodeList list = null;
            XmlDocument doc = new XmlDocument();
            doc.Load("pathname"+e.Name);
            list = doc.GetElementsByTagName("Decision");
            for (int i = 0; i < list.Count; i++)
            {
                XmlAttributeCollection xmlattr = list[i].Attributes;
                fdecision = list[i].InnerText;
            }
            XmlNodeList listsubid = doc.GetElementsByTagName("SubmittalId");
            for (int i = 0; i < list.Count; i++)
            {
                XmlAttributeCollection xmlattr1 = listsubid[i].Attributes;
                subid = Convert.ToInt32(listsubid[i].InnerText);
            }
            Console.WriteLine(subid);
            Console.WriteLine(fdecision);
    }

No comments:

Post a Comment