Convert String to NSURL is return nil in swift
As suggested by the Martin R, I see THIS post and I converted that objective-c code to swift and I got this code:
var url : NSString = "https://maps.googleapis.com/maps/api/distancematrix/json?origins=\(self.latitude),\(self.longitude)&destinations=\(self.stringForDistance)&language=en-US" var urlStr : NSString = url.stringByAddingPercentEscapesUsingEncoding(NSUTF8StringEncoding)! var searchURL : NSURL = NSURL(string: urlStr)! println(searchURL)
and this is working correctly.
For swift 3.0:
let url : NSString = "https://maps.googleapis.com/maps/api/distancematrix/json?origins=\(self.latitude),\(self.longitude)&destinations=\(self.stringForDistance)&language=en-US"let urlStr : NSString = url.addingPercentEscapes(using: String.Encoding.utf8.rawValue)! as NSStringlet searchURL : NSURL = NSURL(string: urlStr as String)!print(searchURL)
I think try this it's perfectly work for me
var url : String = "https://maps.googleapis.com/maps/api/distancematrix/json?origins=-34.4232722,150.8865837&destinations=-34.4250728,150.89314939999997&language=en-US" println("This is String: \(url)") var urlStr : NSString = url.stringByAddingPercentEscapesUsingEncoding(NSUTF8StringEncoding)! var remoteUrl : NSURL? = NSURL(string: url) println("This is URL: \(remoteUrl!)")