0

![Xcode を使用して xml ファイルを読み取ろうとしましたが、文字列で応答が返され、xml は次の画像のように表示され、< と > の代わりに < と > が返されます][1]

サーバーから mywebservice を読み込もうとしています。Web サイトで xml 形式のファイルを作成する Web サービスを作成しました。インターネットを使用してウェブサイトでそのファイルを確認すると、次のように表示されます。

<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」のようなタグを読み取ることができません。これは、応答が文字列で返され、XML が初めてなので、助けてください..私はそのために Xcode と nsmutabledata を使用しています..!! stringbyReplaceofOccurance を試しましたが、< と > が < > に置き換えられませんでした。前もって感謝します。

助けてくれてありがとう。

4

3 に答える 3

1

NSXMLParserを試してみてください

これはあなたに役立つかもしれません...

https://developer.apple.com/library/mac/#documentation/Cocoa/Reference/Foundation/Classes/NSXMLParser_Class/Reference/Reference.html

于 2012-05-14T18:28:06.013 に答える
0

これは構文解析の問題ではありません。Webサービスをチェックして、xmlヘッダーが次のようになっていることを確認してください:<?xml version="1.0" encoding="utf-8"?>またはこのようなもの。

于 2012-05-14T18:41:33.413 に答える
0

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);

            }

        }


    }

}

とても簡単です...うまくいけば、これはあなたを助けます.... :)

于 2012-05-14T18:36:28.887 に答える