我有一个字符串 NSString * const kAUrl = @“http://www.google/start.php?show=best&usr=(here)&pwd=x”;
和
我想传递另一个String NSString * a = @“aa”;
到我在上面的网址(这里)写的地方的上面的网址。
我怎么能通过它?
问候。
答案 0 :(得分:3)
使用NSString stringWithFormat:
NSString *a = @"hello";
NSString *kAUrl = [NSString stringWithFormat:@"http://www.google/start.php?show=best&usr=%@&pwd=x", a];
kAUrl现在包含%@所在的内容。
注意 - 如果a
包含任何网址保留字符(即&
等),则可能会破坏您的网址。
答案 1 :(得分:3)
您需要使用适合URL的字符串进行编码
NSString
实例方法-[stringByAddingPercentEscapesUsingEncoding:]
。
然后使用-[stringWithFormat:]
放入网址。
例如:
-(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];
}
答案 2 :(得分:1)
您可以将声明更改为:
NSString *kAUrl = [NSString stringWithFormat:@"http://www.google/start.php?show=best&usr=%@&pwd=x", a];
祝你好运!
答案 3 :(得分:1)
NSString * a = @“aa”;
NSString * kAUrl = [NSString stringWithFormat:@“http://www.google/start.php?show=best&usr=%@&pwd=x”,a];
kAUrl = [kAUrl stringByAddingPercentEscapesUsingEncoding:NSUTF8StringEncoding];
完成工作。