Ios 从NSXMLParser输出字符串

Ios 从NSXMLParser输出字符串,ios,objective-c,Ios,Objective C,我不熟悉Objective C,我使用一个助手作为NSXMLParser从web服务返回XML负载。我需要将该负载作为XML的NSString或NSData对象获取,以便我可以在另一个库中使用它,将该负载转换为NSDictionary 有没有一种简单的方法将此XML转换为字符串?从文档中,我看到我可以使用NSXMLParser的事件编写自己的字符串生成器,但与在其他语言中使用XML相比,这感觉像是在重新发明轮子。这对您有用吗 NSString *googleString = @"http://w

我不熟悉Objective C,我使用一个助手作为NSXMLParser从web服务返回XML负载。我需要将该负载作为XML的NSString或NSData对象获取,以便我可以在另一个库中使用它,将该负载转换为NSDictionary


有没有一种简单的方法将此XML转换为字符串?从文档中,我看到我可以使用NSXMLParser的事件编写自己的字符串生成器,但与在其他语言中使用XML相比,这感觉像是在重新发明轮子。

这对您有用吗

NSString *googleString = @"http://www.google.com";
NSURL *googleURL = [NSURL URLWithString:googleString];
NSError *error;
NSString *googlePage = [NSString stringWithContentsOfURL:googleURL 
                                                encoding:NSASCIIStringEncoding
                                                   error:&error];
从这里


从这里,您应该能够转换到NSXmlParser或NSData,但是如果您向服务发出此请求,它应该将xml作为字符串返回

您可以将NSMutableData转换为字符串:

您发送请求:

conexion = [[NSURLConnection alloc] initWithRequest:theRequest delegate:self];
    if (conexion) {
        webData = [NSMutableData data];
    }
然后将webData解析为字符串。在此函数中:connectiondFinishLoading

NSString *XML = [[NSString alloc] 
                     initWithBytes: [webData mutableBytes] 
                     length:[webData length] 
                     encoding:NSUTF8StringEncoding];
如果需要显示结果

NSLog(@"%@", XML);

听起来你应该绕过helper,自己从web服务获取XML。出于某种原因,你需要使用这个特定的helper吗?我这样做的方式是使用
NSURLConnection
-可以实现
nsurlconnectionlegate
方法
-connectionidreceiveddata:
,以便将数据附加到
NSMutableData
实例中-然后可以将其输入到其他库中是的,每个人似乎都在说跳过库(这是AFXMLRequestOperation)。我会连接它。我想知道为什么库返回的是解析器而不是字符串……哦,好吧。