1

私はこの質問が何度も聞かれたことを知っています。xmlを含む応答文字列があります。

<?xml version="1.0" encoding="utf-8"?>
<response>116363111</response>

リクエストごとに、新しい短いxml文字列を受け取り、「応答」ノードで値を取得する必要があります。xmlパーサーを作成せずにこれを行うにはどうすればよいですか?この短いxml用のxmlパーサーを作成したくありません。

4

1 に答える 1

3

NSScannerを使用して、<response>最大からをスキャンできます</response>

NSString *xmlString = @"<?xml version=\"1.0\" encoding=\"utf-8\"?>\n<response>116363111</response>";

NSString *startTag = @"<response>";
NSString *endTag = @"</response>";
NSString *responseString;

NSScanner *scanner = [[NSScanner alloc] initWithString:xmlString];
[scanner scanUpToString:startTag intoString:nil];
scanner.scanLocation += [startTag length];
[scanner scanUpToString:endTag intoString:&responseString];
[scanner release];

NSLog(@"Response string is %@", responseString);
于 2011-08-29T09:05:46.073 に答える