黑马程序员技术交流社区

标题: 关于使用NSSing的initWithContentsOfURL抓取baidu.com的疑惑 [打印本页]

作者: Medwyn    时间: 2014-7-3 22:35
标题: 关于使用NSSing的initWithContentsOfURL抓取baidu.com的疑惑
本帖最后由 Medwyn 于 2014-7-5 21:59 编辑

方法调用正常,运行成功,却没有任何结果。请各位高手答疑解惑~{:3_47:}
代码如下:
  1. NSURL *url = [[NSURL alloc] initWithString:@"http://www.baidu.com"];
  2. NSString *s6 = [[NSString alloc] initWithContentsOfURL:url encoding:NSUTF8StringEncoding error:nil];
复制代码

作者: Medwyn    时间: 2014-7-4 12:05
坛子大神都潜水吗。。。。
作者: 忘了一切更好    时间: 2014-7-5 20:27
没有打印出来,当然结果为空。
NSLog(@"%@",s6);

即使能够打印出来结果,但是此段代码有内存泄露,看此行代码:
NSURL *url = [[NSURL alloc] initWithString:@"http://www.baidu.com"];
既然手工alloc, 那么需要手工release。
如果不想手工release,可以使用如下代码:
NSURL *url=[NSURL URLWithString:@"http://www.baidu.com"];
调用静态方法,就不用手工释放了。
作者: Medwyn    时间: 2014-7-5 21:59
忘了一切更好 发表于 2014-7-5 20:27
没有打印出来,当然结果为空。
NSLog(@"%@",s6);

谢谢,后面的代码我没贴进来,我开启了ARC功能因此不需要释放。后来发现是Xcode5的问题,换成4.6.3就可以了。




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2