Почему NSFileManager не работает с UIDocumentBrowserViewController?
Мне нужно проверить файлы в каталоге существует и может быть открыт, но мой FileManager.default.fileExists(atPath: <#url_from_uidocumentbrowservc#>)
вернуть ложь. Я не могу получить список элементов в выбранном каталоге, я не могу проверить, существует ли мой элемент или нет.
И еще одна вещь, я хочу знать, сколько элементов содержится в корневом каталоге из выбранного элемента. Например, я выбираю файл проекта и хочу проверить, сколько элементов содержится в каталоге проекта, а затем использовать эти файлы как зависимости проекта.
Смотрит на код:
func presentDocument(at documentURL: URL) throws {
let rootDirectoryURL = documentURL.deletingLastPathComponent()
let items = try FileManager.default.contentsOfDirectory(at: rootDirectoryURL,
includingPropertiesForKeys: [],
options: []) // Return error `permission denied`
... other code for init document
}
PS URL.startAccessingSecurityScopedResource тоже не работает.
1 ответ
Если вы хотите узнать, какие файлы сохранены в корневом каталоге:
override func viewDidLoad() {
super.viewDidLoad()
let fileName = getDocumentsDirectory().appendingPathComponent("fileNameSave")
print(fileName)
// Name of saved path
do {
try .write(to: fileNameZip)
} catch {
print("error")
}
}
func getDocumentsDirectory() -> URL {
let paths = FileManager.default.urls(for: .documentDirectory, in: .userDomainMask)
return paths[0]
}