0

私はいくつかのTouchXMLコードで立ち往生しています。助けてください。

xmlWebサービスからデータを取得するための次のコードがあります。

NSData *urlData = [NSURLConnection sendSynchronousRequest:request returningResponse:&response error:&error];


NSString *data = [[NSString alloc] initWithData:urlData encoding:NSUTF8StringEncoding];

NSLog(@"String data: %@ \n", data);

//Do the parsing

CXMLDocument *document = [[[CXMLDocument alloc] initWithData:urlData encoding:NSUTF8StringEncoding options:0 error:&error] autorelease];  
NSLog (@"Document  :%@ \n",[document stringValue]);

文字列データにはサービスのコンテンツが含まれていますが、CXMLDocumentオブジェクトに何も含まれていないのはなぜですか?誰かが理由を教えてくれますか?

2009-12-30 18:21:59.467 MyAdvancedBlog[3425:207] String data: <?xml version="1.0" encoding="utf-8"?>

<Post xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns="http://tempuri.org/">
  <IdPostazione>42</IdPostazione>
  <StringID>HOANG</StringID>
  <Name>CASSA2</Name>
  <TerminalValid>true</TerminalValid>
  <NeedSession>false</NeedSession>
</Post>   

2009-12-30 18:21:59.469 MyAdvancedBlog[3425:207] Document  :(null) 
4

1 に答える 1

2

TouchXMLのドキュメントには、それCXMLDocumentはと同じように機能するはずだと書かれていNSXMLDocumentます。したがって、のリファレンスinitWithData:options:error:が役立つ場合があります。

nil失敗した場合の結果になりerror、さらに多くの情報が含まれると表示されます。それnilですか?

今のところ使用することを検討しNSXMLDocument、それらが実際に同じように機能するかどうかを確認することができます。そうでない場合は、TouchXMLでバグを報告してください。

すでにデコードした文字列と一緒に使用することもできます。 initWithXMLString:options:error:

編集:さらに良い。を使用するためのサンプルコードNSXMLDocumentを次に示します。理論的には、それCXMLDocumentも同様に機能するはずです。

于 2009-12-30T18:03:39.613 に答える