의 XML 문자열 데이터 변환/처리 문제점 : Xamarin.IOS를 사용하여 Moment에서 IOS 응용 프로그램을 개발 중입니다. 지금까지 JSON Webservices를 사용하여 작업 해 왔지만 이제 XML 문자열을 반환하는 weather-API를 사용해야합니다. 구문 분석하는 방법을 알아낼 수 없으므로 코드에서 해당 데이터에 액세스 할 수 있습니다.모노 터치 (Xamarin)/C#
해결 시도 : 나는 배열, 사전, 사용자 정의 개체 등으로 파싱하기 위해 C# 자습서의 힙을 이미 살펴 봤지만 대부분의 라이브러리에서 필요하지 않은 문제가 있습니다. 모노 터치 내에서 액세스.
그러나 이에 상응하는 것이 있어야합니다.
JsonConvert.SerializeXmlNode(...);
가 Monotouch에서 사용할 수 없습니다 예를 들어, 방법,
은 내가 JSON으로 변환하려고, 그래서는 여기에 평소 가지로 사용할 수 있습니다. 어셈블리 참조가 있지만 일부 특정 메서드가 누락되었습니다.누구나 해결책을 제안하거나 방향을 알려줄 수 있습니까? 이것에 대해 설명 할 수있는 모든 조명은 정말 감사하겠습니다. 감사.
코드 피 : 이것은 웹 서비스를 요청할 때 얻는 것입니다.
XmlDocument xmlDoc = new XmlDocument();
xmlDoc.LoadXml(dataString);
foreach (XmlElement x in xmlDoc.SelectNodes("weather/data/location/pcode"))
{
Console.Write(x.InnerXml);
}
dataString
가 String
포함 된 XML입니다 다음과 같이 http://developer.xamarin.com/guides/ios/under_the_hood/assemblies/이
당신이 XMLDocument로의 데이터를 분석 할 수 있습니다 :
<?xml version="1.0" encoding="UTF-8" ?>
<weather>
<data>
<location>
<pcode>21335</pcode>
</location>
<day date="07.11.2014">
<tmax>10</tmax>
<tmin>2</tmin>
<wrcode>13</wrcode>
<symbol>regenschauer</symbol>
<rr>20</rr>
<windforce_bft>4</windforce_bft>
<windforce_kmh>22</windforce_kmh>
<winddir>SO</winddir>
<sunrise>07:28</sunrise>
<sunset>16:36</sunset>
<sunshine>6</sunshine>
<details>
<temp_m>6</temp_m>
<symbol_m>heiter</symbol_m>
<wrcode_m>4</wrcode_m>
<windforce_bft_m>4</windforce_bft_m>
<windforce_kmh_m>20</windforce_kmh_m>
<winddir_m>S</winddir_m>
<rr_m>5</rr_m>
<temp_a>10</temp_a>
<symbol_a>wolkig</symbol_a>
<wrcode_a>5</wrcode_a>
<windforce_bft_a>4</windforce_bft_a>
<windforce_kmh_a>22</windforce_kmh_a>
<winddir_a>SO</winddir_a>
<rr_a>20</rr_a>
<temp_e>9</temp_e>
<wrcode_e>13</wrcode_e>
<symbol_e>regenschauer</symbol_e>
<windforce_bft_e>4</windforce_bft_e>
<windforce_kmh_e>22</windforce_kmh_e>
<winddir_e>S</winddir_e>
<rr_e>70</rr_e>
<temp_n>6</temp_n>
<wrcode_n>5</wrcode_n>
<symbol_n>wolkig_n</symbol_n>
<windforce_bft_n>4</windforce_bft_n>
<windforce_kmh_n>20</windforce_kmh_n>
<winddir_n>S</winddir_n>
<rr_n>40</rr_n>
</details>
</day>
<day date="08.11.2014">
<tmax>11</tmax>
<tmin>6</tmin>
<wrcode>5</wrcode>
<symbol>wolkig</symbol>
<rr>30</rr>
<windforce_bft>4</windforce_bft>
<windforce_kmh>22</windforce_kmh>
<winddir>SW</winddir>
<sunrise>07:30</sunrise>
<sunset>16:34</sunset>
<sunshine>3</sunshine>
<details>
<temp_m>9</temp_m>
<symbol_m>bedeckt</symbol_m>
<wrcode_m>6</wrcode_m>
<windforce_bft_m>4</windforce_bft_m>
<windforce_kmh_m>28</windforce_kmh_m>
<winddir_m>S</winddir_m>
<rr_m>30</rr_m>
<temp_a>11</temp_a>
<symbol_a>wolkig</symbol_a>
<wrcode_a>5</wrcode_a>
<windforce_bft_a>4</windforce_bft_a>
<windforce_kmh_a>22</windforce_kmh_a>
<winddir_a>SW</winddir_a>
<rr_a>15</rr_a>
<temp_e>10</temp_e>
<wrcode_e>5</wrcode_e>
<symbol_e>wolkig</symbol_e>
<windforce_bft_e>3</windforce_bft_e>
<windforce_kmh_e>19</windforce_kmh_e>
<winddir_e>S</winddir_e>
<rr_e>10</rr_e>
<temp_n>6</temp_n>
<wrcode_n>5</wrcode_n>
<symbol_n>wolkig_n</symbol_n>
<windforce_bft_n>3</windforce_bft_n>
<windforce_kmh_n>19</windforce_kmh_n>
<winddir_n>SO</winddir_n>
<rr_n>10</rr_n>
</details>
</day>
<day date="09.11.2014">
<tmax>11</tmax>
<tmin>6</tmin>
<wrcode>5</wrcode>
<symbol>wolkig</symbol>
<rr>30</rr>
<windforce_bft>4</windforce_bft>
<windforce_kmh>24</windforce_kmh>
<winddir>SO</winddir>
<sunrise>07:32</sunrise>
<sunset>16:32</sunset>
<sunshine>3</sunshine>
<details>
<temp_m>9</temp_m>
<symbol_m>wolkig</symbol_m>
<wrcode_m>5</wrcode_m>
<windforce_bft_m>4</windforce_bft_m>
<windforce_kmh_m>22</windforce_kmh_m>
<winddir_m>SO</winddir_m>
<rr_m>15</rr_m>
<temp_a>11</temp_a>
<symbol_a>bedeckt</symbol_a>
<wrcode_a>6</wrcode_a>
<windforce_bft_a>4</windforce_bft_a>
<windforce_kmh_a>24</windforce_kmh_a>
<winddir_a>SO</winddir_a>
<rr_a>30</rr_a>
<temp_e>10</temp_e>
<wrcode_e>5</wrcode_e>
<symbol_e>wolkig</symbol_e>
<windforce_bft_e>3</windforce_bft_e>
<windforce_kmh_e>19</windforce_kmh_e>
<winddir_e>S</winddir_e>
<rr_e>10</rr_e>
<temp_n>7</temp_n>
<wrcode_n>5</wrcode_n>
<symbol_n>wolkig_n</symbol_n>
<windforce_bft_n>3</windforce_bft_n>
<windforce_kmh_n>17</windforce_kmh_n>
<winddir_n>SW</winddir_n>
<rr_n>20</rr_n>
</details>
</day>
<day date="10.11.2014">
<tmax>10</tmax>
<tmin>7</tmin>
<wrcode>13</wrcode>
<symbol>regenschauer</symbol>
<rr>60</rr>
<windforce_bft>3</windforce_bft>
<windforce_kmh>19</windforce_kmh>
<winddir>S</winddir>
<sunrise>07:34</sunrise>
<sunset>16:31</sunset>
<sunshine>2</sunshine>
</day>
<day date="11.11.2014">
<tmax>11</tmax>
<tmin>7</tmin>
<wrcode>5</wrcode>
<symbol>wolkig</symbol>
<rr>20</rr>
<windforce_bft>4</windforce_bft>
<windforce_kmh>20</windforce_kmh>
<winddir>SO</winddir>
<sunrise>07:35</sunrise>
<sunset>16:29</sunset>
<sunshine>5</sunshine>
</day>
<day date="12.11.2014">
<tmax>11</tmax>
<tmin>8</tmin>
<wrcode>5</wrcode>
<symbol>wolkig</symbol>
<rr>20</rr>
<windforce_bft>4</windforce_bft>
<windforce_kmh>20</windforce_kmh>
<winddir>O</winddir>
<sunrise>07:37</sunrise>
<sunset>16:27</sunset>
<sunshine>4</sunshine>
</day>
<actual_weather>
<date_time>Freitag, 23:00 Uhr</date_time>
<symbol>bedeckt_n</symbol>
<temp>7,4</temp>
<weatherdesc>Stark bewölkt</weatherdesc>
<windforce_bft>3</windforce_bft>
<windforce_kmh>14</windforce_kmh>
<winddir>SSW</winddir>
</actual_weather>
</data>
xamarin 컴포넌트 Json.NET을 사용하여 json을 쉽게 파싱 할 수있다. 도움이 될만한 http://appliedcodelog.blogspot.in/2015/06/weather-condition-and-forecast-app.html#Implementation – Suchith