簡體   English   中英

如何使用Xcode從服務器讀取webService?

[英]how to read webService from server using Xcode?

![[我嘗試使用Xcode讀取xml文件,但是它在String中給出了響應,並且xml將如下圖所示,並且它給出<和>代表<和>] [1]

我正在嘗試從服務器讀取mywebservice。 我寫了Web服務,該服務在網站的xml formate中創建文件。 當我使用互聯網檢查網站上的文件時,它顯示如下:

<NewDataSet>
  <Table>
    <Column1>Audi</Column1>
  </Table>
  <Table>
    <Column1>BMW</Column1>
  </Table>
  <Table>
    <Column1>MINI</Column1>
  </Table>
</NewDataSet>

但是當我通過肥皂調用該文件時,它會在以下響應中給出:

&lt;NewDataSet&gt;
  &lt;Table&gt;
 &lt;Column1&gt;Audi&lt;/Column1&gt;
 &lt;/Table&gt;
  &lt;Table&gt;
 &lt;Column1&gt;BMW&lt;/Column1&gt;
 &lt;/Table&gt;
 &lt;Table&gt;
 &lt;Column1&gt;MINI&lt;/Column1&gt;
 &lt;/Table&gt;
&lt;/NewDataSet&gt;

但我無法讀取“ NewDataSet”之類的標簽,因為它會在String中返回響應並且我是XML的新用戶,所以請幫助我..我為此使用Xcode和nsmutabledata。 我嘗試使用stringbyReplaceofOccurance,但是它沒有用<>替換&lt和&gt。 提前致謝。

在此先感謝您的幫助。

您可以使用使用TouchXML ....讀取XML文件的最佳方法,而對於TouchXML使用此波紋管鏈接

http://dblog.com.au/general/iphone-sdk-tutorial-building-an-advanced-rss ...

同樣在這里,當您獲得響應時,則可以使用TouchXML像下面這樣以其他方式閱讀..即

- (void) fetchDataSuccessforEvent:(NSMutableData *)data
{
    CXMLDocument *doc = [[[CXMLDocument alloc] initWithData:data options:0 error:nil] autorelease];
    NSArray *nodes = [doc nodesForXPath:@"//Table" error:nil];

    for (CXMLElement *node in nodes) 
    {


        for(int counter = 0; counter < [node childCount]; counter++) 
        {
            if ([[[node childAtIndex:counter] name] isEqualToString:@"Column1"]) 
            {
                NSString *string = [[node childAtIndex:counter] stringValue];
                                NSLog(@"\n\n Title %@",string);

            }

        }


    }

}

非常容易...希望,對您有幫助。...:)

這不是解析問題。 檢查Web服務,並確保xml標頭為: <?xml version="1.0" encoding="utf-8"?>或類似的內容。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM