如何在 Xcode(Objective-c)上的 URL 中连接字符串?

Posted

技术标签:

【中文标题】如何在 Xcode(Objective-c)上的 URL 中连接字符串?【英文标题】:How to Concatenate a string in URL on Xcode (Objective-c)? 【发布时间】:2011-04-07 01:13:20 【问题描述】:

我需要将“CurrentLocation”替换为以下 URL 中的值。 “CurrentLocation”是一个预定义的字符串,它给出了一个动态值(我的意思是每次不同的位置/城市名称)。我需要帮助,如何在 Objective-C 中做到这一点??

NSURL *MainURL = [NSURL URLWithString:@"http://news.google.com/news?q=location:CurrentLocation&output=rss"];

javascript 中,我会做这样的事情;

var a="Google"; var b=".com"; var c=".np"; var d=a+b+c; document.write(d);

请有人帮我解决这个问题。谢谢!!

【问题讨论】:

【参考方案1】:

您可以在 NSString 类上使用stringWithFormat 静态消息。这将使用您指定的格式(使用 printf 样式格式字符串)创建一个 autoreleased NSString 对象。所以对于你的情况:

// get the current location from somewhere
NSString * yourCurrentLocation = @"Sydney";

// create your urlString %@ is replaced with the yourCurrentLocation argument
NSString * urlString = [NSString stringWithFormat:@"http://news.google.com/news?q=location:%@&output=rss", yourCurrentLocation];

【讨论】:

感谢您的快速回复。我按照您的描述尝试过,但可悲的是它说“方法调用的参数太多,预期为 1,有 2 个。” :( @Himalay 您一定是在将其复制到您的代码中时出错了。我做了一个逐字复制并粘贴到我的项目中,这些行编译。尝试明确设置 yourCurrentLocation (编辑答案)。 还有一件事,我如何将“- (void)”的 NSString 值调用为“- (BOOL)”? @Himalay 很高兴你把它整理出来。不知道你最后的评论是什么意思,也许把它写成一个新问题,提供更多信息:)。 @Himalay 如果您对这个答案感到满意,您可以点击“已接受的答案”勾选以将其标记为...欢迎使用 ***。【参考方案2】:

另外,一个好方法是stringByAppendingString,这里有更多信息在苹果网站。

NSString *errorTag = @"Error: ";
NSString *errorString = @"premature end of file.";
NSString *errorMessage = [errorTag stringByAppendingString:errorString];

【讨论】:

以上是关于如何在 Xcode(Objective-c)上的 URL 中连接字符串?的主要内容,如果未能解决你的问题,请参考以下文章

用于ios开发的Windows上的Xcode [重复]

如何使用objective-c在xcode中使用共享偏好? [复制]

如何使 UIImage 在 Objective-c 的 Xcode 中工作

第三方库如何在 Objective-C 和 Xcode 中工作?

Objective-C/Cocoa/XCode 新手:如何接收通知?

如何让 XCode 构建一个包含 Objective-C++ 的项目?