【发布时间】:2016-03-21 07:46:50
【问题描述】:
我在 Swift 中使用 Xcode 7.2 编写了这段代码 ..
func silentPostData(serverName: String, serverport serverPort: String, serverurl serverURL: String, parameters: [NSObject : AnyObject], urldata urlData: NSData) {
let persist = Persistence()
var finalURl = "https://\(serverName):\(serverPort)/\(serverURL)"
for key : String in parameters {
finalURL = finalURL.stringByAppendingString(key)
finalURL = finalURL.stringByAppendingString("=")
finalURL = finalURL.stringByAppendingString((parameters[key] as! String))
finalURL = finalURL.stringByAppendingString("&")
}
}
我在 "for key : String in parameters {" 行中收到错误(如标题所述)。根据之前的答案'(NSObject, AnyObject)' is not convertible to 'String',我尝试将其转换为 NSString ,但没有成功。所以有人知道如何将 [NSObject:AnyObject] 转换为 string 吗?提前谢谢你。
【问题讨论】:
-
无法将字典转换为字符串。
-
但它适用于我的 Objective C 代码..
-
- (void)silentPostData :(NSString*) serverName serverport:(NSString*)serverPort serverurl:(NSString*)serverURL 参数:(NSMutableDictionary*)parameters urldata:(NSData*)urlData { Persistence *持久 = [[持久化分配]init]; NSString *finalURL = [NSString stringWithFormat:@"https://%@:%@/%@?", serverName, serverPort, serverURL];
-
for(NSString *key in parameters) { finalURL = [finalURL stringByAppendingString:key]; finalURL = [finalURL stringByAppendingString:@"="]; finalURL = [finalURL stringByAppendingString:[参数 objectForKey:key]]; finalURL = [finalURL stringByAppendingString:@"&"];
-
您可以只编辑自己的问题,而不是在 cmets 中粘贴不可读的代码。