달력

5

« 2024/5 »

  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30
  • 31

http://suite.tistory.com/ fs  2008.04 실전 활용 못했음~


~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

 common.cs source

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~



// 2008 04 fs 그냥 c# 공부

using System;
using System.Collections;
using System.Web;
using System.Web.UI;
using System.Web.UI.HtmlControls;
using System.Web.UI.WebControls;
using System.Xml;
using System.Net; //http 관련 라이브러리
using System.IO; //stream 관련 라이브러리


public class FS_XML : System.Web.UI.Page {

    string SERVER_URL="http://localhost:6973/aa.xml?base64=N&";
    XmlDocument xmldoc= new XmlDocument();

    public ArrayList RESULT_SRCH=new ArrayList();
    public ArrayList m_URL=new ArrayList();
    public string call_url="";
 
   
    //결과 정보 변수
    public string section_name;
    public string usrspec;
    public string idxname;
    public string qryflag;
    public string srtflag;
    public string totcnt;
    public string maxcnt;
    public string outcnt;
    public string pagenum;
    public string elapse;
 
 
    public void GetXmlData(){

  int start_child=0;

        foreach ( string value in m_URL ){
            call_url+=value;
        }
        //Response.Write(call_url);

        xmldoc.Load(call_url);

        // 헤더 정보 담아오기
        section_name=xmldoc.DocumentElement.ChildNodes[0].Attributes[0].InnerText;
        usrspec=xmldoc.DocumentElement.ChildNodes[0].ChildNodes[start_child++].InnerText;
        idxname=xmldoc.DocumentElement.ChildNodes[0].ChildNodes[start_child++].InnerText;
        qryflag=xmldoc.DocumentElement.ChildNodes[0].ChildNodes[start_child++].InnerText;
        srtflag=xmldoc.DocumentElement.ChildNodes[0].ChildNodes[start_child++].InnerText;
        totcnt=xmldoc.DocumentElement.ChildNodes[0].ChildNodes[start_child++].InnerText;
        maxcnt=xmldoc.DocumentElement.ChildNodes[0].ChildNodes[start_child++].InnerText;
        outcnt=xmldoc.DocumentElement.ChildNodes[0].ChildNodes[start_child++].InnerText;
        pagenum=xmldoc.DocumentElement.ChildNodes[0].ChildNodes[start_child++].InnerText;
        elapse=xmldoc.DocumentElement.ChildNodes[0].ChildNodes[start_child++].InnerText;
 
        //결과 데이터 담아오기
        //for #1
        for(int i=0; i < Int32.Parse(outcnt); i++){
     
            XmlNode node=xmldoc.DocumentElement.ChildNodes[0].ChildNodes[ i+start_child ];
            Hashtable ht_temp=new Hashtable();

            for(int j=0 ; j < node.ChildNodes.Count; j++){
    
                ht_temp.Add(node.ChildNodes[j].Attributes[0].InnerText,node.ChildNodes[j].InnerText);
        
                //Response.Write(node.ChildNodes[j].Attributes[0].InnerText);
                //Response.Write(node.ChildNodes[j].InnerText + "<br>");
                //System.Environment.Exit(0);

            }
            // Response.Write( ht_temp["^titl:"]+ "<br>");
      
            RESULT_SRCH.Add(ht_temp);
        }//end of for #1
   
    }//end of GetResults()
 
    // 호출 파라미터 할당
    public void SetQRY(string p_name,string p_value){
            m_URL.Add(p_name + "=" + p_value + "&");
 }

    protected void Page_Load(object sender, EventArgs e) {
       
        if( ! IsPostBack ){
           m_URL.Add(SERVER_URL);
        }
    }
   
       
 }// end of  FS_XML



 

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

xml_sample.aspx  샘플 페이지

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~


<%@ Page Language="C#" Src="common.cs" Inherits="FS_XML"  %>

<HTML>
<META http-equiv="Content-Type" content="text/html; charset=euc-kr" />
<HEAD>
<TITLE> XML ASPX - C# 파서 샘플 페이지</TITLE>

</HEAD>

<BODY>
<P>

<%

    SetQRY("qry","*");
    SetQRY("out","10");

    // xml 데이터 파싱해서 RESULT_SRCH에 담아온다
    GetXmlData();

     Response.Write("<h2> ASPX(C#) XML 파서 샘플 페이지 </h2>");
     Response.Write("<xmp> <XML 호출 URL> :" +  call_url + "</xmp>");
 %>

 <br>
 &nbsp;&nbsp;- 전체건수: <%= totcnt %> <br>
 &nbsp;&nbsp;- 요청건수(outmax값): <%= maxcnt %> <br>
 &nbsp;&nbsp;- 출력건수: <%= outcnt %> <br>
 &nbsp;&nbsp;- 출력페이지번호: <%= pagenum %> <br> <br>


<%

    // 결과 출력
    foreach ( Hashtable ht_obj in RESULT_SRCH ){
        Response.Write( ht_obj["^titl:"]+ "<br>");
    }
 
%>

</BODY>

</HTML>

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

이제 JSP버전만 남았군~~~


 

 

:
Posted by mastar