0

私は xcode を初めて使用します.. XML からデータを取得する方法について学びたいと思っています.. これは私が何日も立ち往生しているドラフト コードです.

XML コード:

<find>
<set_number>038881</set_number>
<no_records>000138874</no_records>
<no_entries>000007000</no_entries>
</find>

ただし、この xml から set_number のみを取得するのにいくつかの困難があります... URL は機密目的のために空白のままにしました.. 気にしないでください.. 最後の 2 つのコードにより、アプリが強制的に閉じられました。 。 ヘルプ!!

 NSString *URL = [NSString stringWithFormat:@""];

 NSMutableData *receivedData = [[[NSMutableData alloc] initWithContentsOfURL:[NSURL URLWithString:URL] ]autorelease];            
 NSString *theRecord = [[[NSString alloc] initWithData:receivedData encoding:NSUTF8StringEncoding] autorelease];

  NSString *path = [theRecord valueForKey: @"set_number"];
     NSLog(@"File Data: %@", path);    

代わりに、このコードを一番下に追加しようとしました..

   if ([theRecord isEqualToString:@"no_records"]){ 

        NSLog(@"Contents of URL: %@", theRecord); 
}

次に、コードをデバッグしようとしています..エラーは表示されません..代わりに、出力に0が表示されます..私のno_recordsが整数であるためでしょうか?? しかし、レコードを文字列として割り当てました..それが表示できなかった理由ですか?


代わりに、このコードを一番下に追加しようとしました..

   `if ([theRecord isEqualToString:@"no_records"]){ 

        NSLog(@"Contents of URL: %@", theRecord); 
}` 

次に、コードをデバッグしようとしています..エラーは表示されません..代わりに、出力に0が表示されます..私のno_recordsが整数であるためでしょうか?? しかし、私はレコードを文字列として割り当てました..なぜ彼らは表示できなかったのですか?? 助けてください!!

4

2 に答える 2

0

NSString *path = [theRecord valueForKey: @"set_number"];

theRecord は、valueForKey を使用できない NSString インスタンスです。最初に xml 文字列を解析し、必要なコンテンツをタグから取得する必要があります。または、文字列に部分文字列を取得する必要があります。

于 2012-08-27T09:43:42.437 に答える
0

XML を解析するには、NSXMLParser クラスを使用します。

于 2012-08-23T15:16:58.887 に答える