[swift-users] Why can't we get `URL` equal on the same path?
Zhao Xin
owenzx at gmail.com
Fri Oct 14 22:56:21 CDT 2016
You are right Jens. If I use `appendingPathComponent`, it works.
let url = URL(fileURLWithPath: "foo/bar", isDirectory: false)
let baseURL = url.deletingLastPathComponent()
let newURL = URL(fileURLWithPath: "bar", isDirectory: false, relativeTo:
baseURL)
let testURL = baseURL.appendingPathComponent("bar")
print(url == newURL) // prints false
print(url.path == newURL.path) // prints true
print(url == testURL) // prints true
print(url.path == testURL.path) // prints true
Zhaoxin
On Sat, Oct 15, 2016 at 11:19 AM, Jens Alfke <jens at mooseyard.com> wrote:
>
> > On Oct 14, 2016, at 5:16 PM, zh ao via swift-users <
> swift-users at swift.org> wrote:
> >
> > In your opinion, `baseURL` is a factor more important than `path`. I can
> not unaccept your answer. But I want to know why? Is there a standard on
> URL equality?
>
> I think this is just a weirdness of NSURL (assuming you’re running this
> code on macOS or iOS.) I’ve always avoided the `relativeTo:` initializers
> of NSURL because the objects they produce behave (IMHO) unexpectedly.
>
> —Jens
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.swift.org/pipermail/swift-users/attachments/20161015/5d0bb5fe/attachment.html>
More information about the swift-users
mailing list