XML을 인터페이스를 구문 분석하는 C #을

1          공용  문자열 GetWeather ()
 2          {
 3              스트링 weatherXML = GetRequestData ( " http://flash.weather.com.cn/wmaps/xml/china.xml?spm=a2c4e.10696291.0.0.5c5019a4nz9oyZ&file=china.xml " );
4              하는 XmlDocument XML = 을 XmlDocument ();
5              xml.LoadXml (weatherXML);
6              의 XMLNode 루트 = xml.SelectSingleNode ( " 중국 " );
7              var에 목록 = Newtonsoft.Json.JsonConvert.SerializeXmlNode (루트);
8              XmlNodeList childlist =root.ChildNodes]
 . 9              복귀 목록;
 10          }
 . 11  
(12)가          공개  정적  스트링 GetRequestData ( 문자열 sUrl)
 (13)가          {
 14              // 메소드는 요청 URI에 객체 클래스를 생성 작성의 HttpWebRequest를 사용한다. 
15              HttpWebRequest를 요청 = (의 HttpWebRequest) HttpWebRequest.Create (sUrl)
 16              // 실시 받기 요청이 지정되는 방법 
(17).              request.method = WebRequestMethods.Http.Get;
 18이다              // 다시 자원 요청 응답을 강한 회전 응답 HttpWebResponse 클래스 오브젝트이다 
. 19              HttpWebResponse 클래스 응답 =합니다 (HttpWebResponse 클래스) request.GetResponse ();
 20이다              // 응답 개체를 읽을 수있는 스트림을 가져옵니다 
(21)가              에서는 StreamReader 리더 = 새로운 새로운 하며에서는 StreamReader (response.GetResponseStream ())
 (22)는              // 스트림의 전체 텍스트를 읽고 STR에 할당 된 
23              문자열 STR = reader.ReadToEnd ();
 24              // 응답 오프 
25              response.Close ();
 (26)는              복귀 STR;
 27          }

        ///  <요약> 
        /// 파싱 된 XML 인터페이스 JSON 오브젝트 돌아온
         ///  </ 요약> 
        ///  <PARAM NAME = "m"> </ PARAM> 
        ///  <PARAM NAME = "URL"> 인터페이스 경로 </ PARAM> 
        ///  <반품> </ 반환> 
        [HttpGet]
         공용  문자열 XmlShi (모델 m, 문자열 URL)
        {
            HttpWebRequest를 요청할 =이 WebRequest.Create ( " http://flash.weather.com.cn/wmaps/xml/china.xmlspm=a2c4e.10696291.0.0.5c5019a4nz9oyZ&file=china.xml " ) 의 HttpWebRequest;

            사용 (HttpWebResponse 클래스 응답 request.GetResponse = () 로서 HttpWebResponse 클래스)
            {
                리더는 StreamReader = 에서는 StreamReader (response.GetResponseStream ());
                VAR xmlStr = reader.ReadToEnd ();
                문서하는 XmlDocument = 을 XmlDocument ();
                doc.LoadXml (xmlStr);
                문자열 JSON = JsonConvert.SerializeXmlNode (문서 [ " 중국 " ]);
                반환 JSON을;
            }
        }





/// 첫 페이지
@ {
    ViewBag.Title = "XML을";
}

<H2> XML의 </ H2>

<! DOCTYPE html로>
<HTML>
<head>
    <제목> JSONP - XML ​​</ 제목>
    <스크립트 SRC = "jq.js"> </ script>
</ head>
<body>
    <표 클래스 = "테이블">
        <THEAD>
            <TR>
                <TD> 省 </ TD>
                <TD> 英文 </ TD>
                <TD> 市 </ TD>
                <TD> 알 컬럼 1 </ TD>
                <TD> 알 컬럼 2 </ TD>
                <TD> 날씨 </ TD>
                <TD> 알 칼럼 3 </ TD>
                <TD> 알 컬럼 4 </ TD>
                <TD> 상태 </ TD>
            </ TR>
        </ THEAD>
        <TBODY 자료 = "TB"> </ TBODY>

    </ 테이블>

</ body>
</ HTML>
<스크립트 SRC = "~ / 스크립트 / JQuery와-3.3.1.js"> </ script>
<script>
    $ (함수 () {
        $ 아약스 ({
            URL : "/ 홈 / XmlShi"
            dataType와 "JSON"
            성공 : 함수 (D) {

                위한 VAR (I = 0; i가 d.china.city.length를 <; 내가 ++) {
                    var에 TR = "<TR>"
                        + "<TD>"d.china.city + [I] [ "@@ quName"] + "</ TD>"
                        + "<TD>"d.china.city + [I] [ "@@ pyName"] + "</ TD>"
                        + "<TD>"d.china.city + [I] [ "@@ CityName이"] + "</ TD>"
                        + "<TD>"d.china.city + [I] [ "@@ 상태 1"] + "</ TD>"
                        + "<TD>"d.china.city + [I] [ "@@ 상태 2"] + "</ TD>"
                        + "<TD>"d.china.city + [I] [ "@@ stateDetailed"] + "</ TD>"
                        + "<TD>"d.china.city + [I] [ "@@ tem1"] + "</ TD>"
                        + "<TD>"d.china.city + [I] [ "@@ tem2"] + "</ TD>"
                        + "<TD>"d.china.city + [I] [ "@@ windState"] + "</ TD>"
                        + "</ TR>";
                    . $ ( "# 결핵") (TR)를 추가;

                    $ 아약스 ({
                        URL : "/ 홈 / XmlAdd"
                        유형 : "POST",
                        데이터 : {
                            quName : d.china.city [I] [ "@@ quName"],
                            pyName : d.china.city [I] [ "pyName @@"],
                            CityName이 : d.china.city [I] [ "@@ CityName이"],
                            상태 1 : d.china.city [I] [ "@@ 상태 1"],
                            상태 2 : d.china.city [I] [ "@@ 상태 2"],
                            stateDetailed : d.china.city [I] [ "stateDetailed @@"],
                            tem1 : d.china.city [I] [ "@@ tem1"],
                            tem2 : d.china.city [I] [ "@@ tem2"],
                            windState : d.china.city [I] [ "@@ windState"]
                        },
                        성공 : 함수 (D) {}
                    })
                }
            }
        })
    })
</ script>  
 
  

  

 

 

 

추천

출처www.cnblogs.com/wmm0105/p/11764493.html