Iphone 将字符串传递到URL。
我有一根绳子 NSString*const kAUrl=@ 及 我想再传一串 NSString*a=@“aa” 到上面的网址在我写的地方(这里)在上面的网址 我怎样才能通过呢Iphone 将字符串传递到URL。,iphone,objective-c,Iphone,Objective C,我有一根绳子 NSString*const kAUrl=@ 及 我想再传一串 NSString*a=@“aa” 到上面的网址在我写的地方(这里)在上面的网址 我怎样才能通过呢 注意。使用NSString stringWithFormat: NSString *a = @"hello"; NSString *kAUrl = [NSString stringWithFormat:@"http://www.google/start.php?show=best&usr=%@&pwd=x"
注意。使用NSString stringWithFormat:
NSString *a = @"hello";
NSString *kAUrl = [NSString stringWithFormat:@"http://www.google/start.php?show=best&usr=%@&pwd=x", a];
kAUrl现在包含%@所在位置的内容
但是要小心-如果
a
包含任何URL保留字符(即&
等),它可能会破坏您的URL。您可以将声明更改为:
NSString *kAUrl = [NSString stringWithFormat:@"http://www.google/start.php?show=best&usr=%@&pwd=x", a];
祝你好运 您需要使用
NSString
实例方法-[stringByAddingPercentEscapesUsingEncoding:
然后使用-[stringWithFormat:
将其放入URL
例如:
-(NSURL*)showBestURLWithUser:(NSString*)user {
{
user = [user stringByAddingPercentEscapesUsingEncoding:NSASCIIStringEncoding];
static NSString* template = @"http://www.google/start.php?show=best&usr=%@&pwd=x";
NSString* urlString = [NSString stringWithFormat:template, user];
return [NSURL URLWithString:urlString];
}
NSString*a=@“aa”
NSString*kAUrl=[NSString stringWithFormat:@]http://www.google/start.php?show=best&usr=%@&pwd=x“,a]
kAUrl=[kAUrl stringByAddingPercentEscapesUsingEncoding:NSUTF8StringEncoding]
工作完成。它不会工作,因为NSString*const a;a是常数。它给我错误。请建议。为什么它必须是常数?只是不要将其设为常量,你应该会没事的。为什么你要创建一个字符串常量,然后试图修改它?我看不出当NSString常量已经不可变时,将其设为常量有什么价值?使用常量有什么原因吗?该字符串在此状态下是不可变的(无需为其分配新的对象引用),因为它不是NSMutableString…据我所知,一个常量NSString*对象您将无法重新分配一个新的NSString,并且将只接受一个常量字符串(即@“字符串”)。建议我使用plz。我需要const.@shishir.bobby:我扩展了这个示例,为URL模板使用了一个常量字符串,并将其框在一个适当的方法上下文中。这不会将整个字符串编码为URL吗?包括URL协议等部分?为什么需要“const”??