2011-08-29 234 views
1

我知道这个问题已被询问很多次。我有包含xml的响应字符串。从xml字符串获取子字符串objective-c

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

对于每个请求我收到新的短xml字符串,我需要在“响应”节点获得价值。我怎么能做到这一点,而不创建XML解析器?我不想为这个简短的XML创建XML解析器。

回答

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

好,谢谢,fichek) –