如何将具体目录路径转换为 NSURL?
How can I convert a concrete directory path to NSURL?
我想知道如何从路径字符串创建 URL。
这是我的代码:
let completePath = "/Volumes/MyNetworkFolder/"
do {
let items = try FileManager.default.contentsOfDirectory(atPath: completePath)
for item in items {
if item.hasDirectoryPath { //String has no member hasDirectoryPath
itemList.append(item)
}
}
} catch {
print("Failed to read dir")
let buttonPushed = dialogOKCancel(question: "Failed to read dir", text: "Map the network folder")
if(buttonPushed) {
exit(0)
}
}
我只想将文件夹添加到 itemList 数组。 hasDirectoryPath 是一种 URL 方法。
我如何更改我的代码以获得 URLs 而不是 String.
提前感谢您提供的任何帮助。
最好使用contentsOfDirectory(at url: URL, ...)
方法
FileManager
,它给你一个 URL
的数组,而不是
字符串:
let dirPath = "/Volumes/MyNetworkFolder/"
let dirURL = URL(fileURLWithPath: dirPath)
do {
let items = try FileManager.default.contentsOfDirectory(at: dirURL,
includingPropertiesForKeys: nil)
for item in items {
if item.hasDirectoryPath {
// item is a URL
// item.path is its file path as a String
// ...
}
}
} catch {
print("Failed to read dir:", error.localizedDescription)
}
我想知道如何从路径字符串创建 URL。 这是我的代码:
let completePath = "/Volumes/MyNetworkFolder/"
do {
let items = try FileManager.default.contentsOfDirectory(atPath: completePath)
for item in items {
if item.hasDirectoryPath { //String has no member hasDirectoryPath
itemList.append(item)
}
}
} catch {
print("Failed to read dir")
let buttonPushed = dialogOKCancel(question: "Failed to read dir", text: "Map the network folder")
if(buttonPushed) {
exit(0)
}
}
我只想将文件夹添加到 itemList 数组。 hasDirectoryPath 是一种 URL 方法。 我如何更改我的代码以获得 URLs 而不是 String.
提前感谢您提供的任何帮助。
最好使用contentsOfDirectory(at url: URL, ...)
方法
FileManager
,它给你一个 URL
的数组,而不是
字符串:
let dirPath = "/Volumes/MyNetworkFolder/"
let dirURL = URL(fileURLWithPath: dirPath)
do {
let items = try FileManager.default.contentsOfDirectory(at: dirURL,
includingPropertiesForKeys: nil)
for item in items {
if item.hasDirectoryPath {
// item is a URL
// item.path is its file path as a String
// ...
}
}
} catch {
print("Failed to read dir:", error.localizedDescription)
}