从URL获取XML文件到NSData对象?

Gol*_*les 3 iphone cocoa-touch objective-c nsdata

我需要将一个.xml文件从URL地址加载到NSData对象中,以便使用我已经拥有的一些库进行进一步解析(但是他们问我.xml文件是NSData),我该怎么做?

url格式是这样的:

http://127.0.0.1/config.xml

Ram*_*min 7

假设它是UTF-8数据.如果它是本地的(即在包内)类似于:

NSError *error;
NSString* contents = [NSString stringWithContentsOfFile:PATHTOLOCALFILE 
                               encoding:NSUTF8StringEncoding
                               error:&error];
NSData* xmlData = [contents dataUsingEncoding:NSUTF8StringEncoding];
Run Code Online (Sandbox Code Playgroud)

如果它在远程站点上,那么应该这样做.请注意,它是同步的.如果您需要异步加载,那么您必须首先建立自己的网络或使用ASIHTTPConnection之类的东西来下载文件.

NSError *error;
NSString* contents = [NSString stringWithContentsOfUrl:[NSURL URLWithString:URLOFXMLFILE] 
                               encoding:NSUTF8StringEncoding
                               error:&error];
NSData* xmlData = [contents dataUsingEncoding:NSUTF8StringEncoding];
Run Code Online (Sandbox Code Playgroud)