これで、URLを使って操作するファイルやディレクトリを指していきますが。
func appending<S>(
component: S,
directoryHint: URL.DirectoryHint = .inferFromPath
) -> URL where S : StringProtocol
👉 appending(component:directoryHint:) | Apple Developer Documentation
一つ目の引数の末尾の「/(スラッシュ)」
で、
そのURLが指しているものが、
「ディレクトリなのかファイルなのか」
が変わる。
実体ではなく、指しているもの。
指す側の認識。
let home = URL.homeDirectory
let documents = URL.documentsDirectory
let documents1 = home.appending(component: "Documents/")
let documents2 = home.appending(component: "Documents", directoryHint: .isDirectory)
let documents3 = home.appending(component: "Documents")
let documents4 = home.appending(component: "Documents/", directoryHint: .notDirectory)
print(
documents == documents1, // true
documents == documents2, // true
documents1 == documents2, // true
documents == documents3, // false
documents == documents4 // false
)
2つ目の引数 directoryHint
は、その指定を上書きする。
デフォルトは .inferFromPath
。
楽になったような、逆に混乱するような、
どうなんだろ。
【Swift】URL appendingPathComponent() vs appending(component:)
👉 https://t.co/QuNo1FoAIa#プログラミング #ios— chanzmao (@maochanz) June 6, 2024
【Swift】その URL が ファイル なのか ディレクトリ なのか 存在しないのか
👉 https://t.co/TI98l4AqPQ#プログラミング #Swift— chanzmao (@maochanz) June 4, 2024