所以我已将 a 转换NSURL为String. 所以如果我println看起来像file:///Users/...等等。
NSURL
String
println
file:///Users/...
后来我想要这个回来,NSURL所以我尝试将它转换回来,如下所示,但是我丢失了上面字符串版本中出现的两个正斜杠,这反过来又破坏了代码,因为它url是无效的。
url
为什么我的转换回到NSURL从我给它的删除两个正斜杠,String我怎样才能转换回NSURL包含三个正斜杠?
var urlstring: String = recordingsDictionaryArray[selectedRow]["path"] as String println("the url string = \(urlstring)") // looks like file:///Users/........etc var url = NSURL.fileURLWithPath(urlstring) println("the url = \(url!)") // looks like file:/Users/......etc
fileURLWithPath()用于将普通文件路径(例如“/path/to/file”)转换为 URL。你urlString是一个完整的 URL 字符串,包括方案,所以你应该使用
fileURLWithPath()
urlString
let url = NSURL(string: urlstring)
将其转换回NSURL. 例子:
let urlstring = "file:///Users/Me/Desktop/Doc.txt" let url = NSURL(string: urlstring) println("the url = \(url!)") // the url = file:///Users/Me/Desktop/Doc.txt