将NSURL转换为本地文件路径

时间:2011-08-05 12:33:26

标签: objective-c xcode macos

我有一个看起来像这样的NSURL:

file://localhost/Users/myuser/myfile.txt

是否有标准函数将其转换为如下所示的本地文件路径:

/Users/myuser/myfile.txt

2 个答案:

答案 0 :(得分:212)

使用-[NSURL path]方法:

NSLog(@"%@", myUrl.path);

来自文档:

  

网址的路径,未使用stringByReplacingPercentEscapesUsingEncoding:方法转义。如果接收方不符合RFC 1808,则返回nil

     

如果此URL对象包含文件URL(由isFileURL确定),则此方法的返回值适合输入NSFileManager或NSPathUtilities的方法。如果路径有尾部斜杠,则将其剥离。

     

根据RFC 3986,权限(主机名和端口)部分之后的前导斜杠被视为路径的一部分。

请注意,您可以使用+[NSURL fileURLWithPath:]创建此类网址。

答案 1 :(得分:1)

Swift 4:

absoluteURL.path 

yourUrl.path