Ios NSURL URLWithString url始终为零

Ios NSURL URLWithString url始终为零,ios,nsurl,Ios,Nsurl,我的代码如下: NSString *urlStr = [NSString stringWithFormat:@"https://xxx.xxx.xx.xx/Pages/Service/FMService.svc/FileAudit?user=%@&pass=%@&fileId=%d&isAudited=1&opinion=%@",appDelegate.user.userName,appDelegate.user.password,self.todo.fileId

我的代码如下:

NSString *urlStr = [NSString stringWithFormat:@"https://xxx.xxx.xx.xx/Pages/Service/FMService.svc/FileAudit?user=%@&pass=%@&fileId=%d&isAudited=1&opinion=%@",appDelegate.user.userName,appDelegate.user.password,self.todo.fileId,self.opinion];
    NSLog(@"URL=%@",urlStr);        
    NSURL *url = [NSURL URLWithString:urlStr];
url=(NSURL*)0*00000000@“


我怎么才能算出来?提前谢谢你

出于调试目的,我将逐段构建urlStr,而不是同时组合五个NSSTRING。在每次添加到urlStr之后,放入NSLog(@“%@”,urlStr)语句。这将揭示问题的根源所在。

如果该字符串的一部分为零,那么整个问题就会变得一团糟。检查其每个部分是否都不是零。另一个原因可能是类型不匹配,例如,
fileId
是一个对象而不是整数。encode urlstring。[urlStr stringByAddingPercentEscapesUsingEncoding:NSUTF8StringEncoding];它是您现有的代码序列吗?或者你不在不同的地方调用这些字符串吗?我明白了,self.opinion是NSString,它有一些中文字符,所以正如0x8badf00d所说,应该使用NSUTF8StringEncoding。谢谢大家。NSString*urlUTF8=[urlStr stringByAddingPercentEscapesUsingEncoding:NSUTF8StringEncoding];NSURL*url=[NSURL URLWithString:urlUTF8];