Skip to content

Latest commit

 

History

History
35 lines (20 loc) · 1.14 KB

README.md

File metadata and controls

35 lines (20 loc) · 1.14 KB

SwiftyRelativePath

This is a Swift equivalent of Ruby's Pathname.relative_path_from() or Java's Path.relativize().

Example of inputs and outputs:

| Long Path                 | Relative to Path | Return Value      |
|---------------------------|------------------|-------------------|
| /usr/X11/agent/47.gz      | /usr/X11         | agent/47.gz       |
| /usr/share/man/meltdown.1 | /usr/share/cups  | ../man/meltdown.1 |
| /var/logs/x/y/z/log.txt   | /var/logs        | x/y/z/log.txt     |

Usage

import SwiftyRelativePath

let url0 = URL(fileURLWithPath: "/computer/qubit/17")
let url1 = URL(fileURLWithPath: "/computer/lab")
let path = url0.relativePath(from: url1)
// path is "../qubit/17"

Credits

License

MIT License.