从url到string的内容

时间:2014-05-27 10:09:00

标签: objective-c nsurl url-encoding

NSString *urlAddress = [NSString stringWithFormat:@"http://www.domain.com?input=%@",[alertView textFieldAtIndex:0].text];
NSURL *myUrl = [NSURL URLWithString:[urlAddress stringByAddingPercentEscapesUsingEncoding:NSUTF8StringEncoding]];
NSString *openURL = [NSString stringWithContentsOfURL:myUrl encoding:NSUTF8StringEncoding error:NULL];
NSLog(@"%@",openURL);

openUrl总是返回(null),可能是因为编码,但我不知道如何修复它。

2 个答案:

答案 0 :(得分:1)

仔细检查这三件事:

  • 检查您指向的网址是否为有效网址。 null值可能是无效网址的结果。
  • 抓住NSError引发的stringWithContentsOfURL。这将为您提供有关错误的一些见解。
  • 就像您怀疑的那样,尝试更改字符串编码。

答案 1 :(得分:0)

NSError *error;
NSString *urlString = [NSString stringWithFormat:@"http://www.domain.com?input=%@", stringVariable];
NSURL *urlAdress = [NSURL URLWithString:urlString];
NSString *urlContent = [[NSString alloc] initWithContentsOfURL:urlAdress encoding:NSUTF8StringEncoding error:&error];
NSLog(@"%@", urlContent);

这很好用,问题是互联网连接失败。