본문 바로가기
프로그래밍 언어/.Net

.Net 에서 웹의 XML 문서를 파싱하여 필요로 하는 노드만 검색하기

by hs_seo 2013. 4. 24.

목적은 웹서비스로 XML 문서를 가져와서 파싱하여 필요로 하는 노드의 정보만 가져오는 것이다. 


이를 위한 코드는 다음과 같다. 



// url 작성
string url = ConfigurationManager.AppSettings["approval_url"] + "?FormKey=" + formKey + "&EmpNo=" + ConfigurationManager.AppSettings["emp_no"]; ;

// http 연결하여 xml 문서 가져오기
WebRequest wrGETURL = WebRequest.Create(url);
using (StreamReader reader = new StreamReader(wrGETURL.GetResponse().GetResponseStream()))
{
    // XML 결과값 읽기
    String xml = String.Empty;
    String sLine = String.Empty;
    while (sLine != null)
    {
	sLine = reader.ReadLine();

	if (sLine != null)
	    xml += sLine;
    }

    // XML 문서 생성
    XmlDocument doc = new XmlDocument();
    doc.LoadXml(xml);
    XmlElement root = doc.DocumentElement;
    // IA_KEY 노드만 가져옴
    XmlNodeList nodes = root.GetElementsByTagName("IA_KEY");

    if (nodes == null || nodes.Count <= 0)
	continue;

    foreach (XmlNode node in nodes)
    {
	if (iaKeyList == null)
	{
	    iaKeyList = new List();
	}

	// IA_KEY 의 값만 입력
	iaKeyList.Add(node.InnerText);
    }
}



반응형