Swift URL resourceSpecifier 不可用
Posted
技术标签:
【中文标题】Swift URL resourceSpecifier 不可用【英文标题】:Swift URL resourceSpecifier is unavailable 【发布时间】:2017-04-25 16:03:48 【问题描述】:我正在将代码从 Objective-C 转换为 Swift 3,并且在我编写这段代码时
let url = URL(string:"http://example.com/index.html")
var formattedURL:String = url!.resourceSpecifier
我收到一个错误“‘resourceSpecifier’不可用:请改用path
、query
和fragment
”。我该如何解决这个问题?
【问题讨论】:
resourceSpecifier
是NSURL
的属性。虽然您通常在 Swift 3 中使用 URL
,但您仍然可以使用 NSURL
。
URL中resourceSpecifier的等价物是什么?
没有,这就是问题所在。你可以去掉方案和冒号来得到相同的结果。
【参考方案1】:
您可以将URL
桥接到NSURL
let url = URL(string:"http://example.com/index.html")!
let formattedURL = (url as NSURL).resourceSpecifier
【讨论】:
如果这是唯一的用法,也可以使用NSURL
开头。
URL中resourceSpecifier的等价物是我的主要兴趣。我知道我可以随时使用 NSURL。
resourceSpecifier
未在 URL
中实现。你可以考虑编译器的建议。【参考方案2】:
url.absoluteString.replacingOccurrences(of: "\(url.scheme ?? "")://", with: "")
【讨论】:
以上是关于Swift URL resourceSpecifier 不可用的主要内容,如果未能解决你的问题,请参考以下文章
类型'URL'没有成员'fileURL' - Swift 3