0
initWithContentsOfURL:error:
返回(null)
当它应该返回"São Tomé and Príncipe"
。我用没有特殊字符的文本测试过,然后工作正常。initWithContentsOfURL:错误:当内容是特殊字符时返回(null)
NSString *myURL = [NSString stringWithString:@"http://mywebsite.com/api-call.php"];
NSURL *url = [[NSURL alloc] initWithString:myURL];
NSString *strResult = [[NSString alloc] initWithContentsOfURL:url encoding:NSUTF8StringEncoding error:nil];
NSLog(@"%@",strResult);
我想问题是与编码有关,但我不知道如何解决它。
它返回'nil',而不是字符串'(null)'。您是否检查了错误对象以查看它说的内容? 'NSError * err; NSString * strResult = [[NSString alloc] initWithContentsOfURL:url encoding:NSUTF8StringEncoding error:&err]; if(!strResult){NSLog(@“%@”,err); }' – 2012-03-28 17:31:06
不,我现在就试试。谢谢 – budidino 2012-03-28 17:32:34
它返回:“错误域= NSCocoaErrorDomain代码= 261”。看起来我必须检查API是否以UTF-8编码返回。 – budidino 2012-03-28 17:37:32