)
今天我遇到了一个问题,我找不到一个简单的解决办法。
通过以下方式:
FileManager().fileExists(atPath:(fileURL.path))
找出一个文件是否存在很简单。实际上,我有文件名,但不知道扩展名。如何使用FileManager()查找没有扩展名的文件。类似于.deletingPathExtension()的FileManger().fileExists?有点像
ls filename.*
发布于 2022-04-14 12:23:48
您可以创建一个FileManager扩展名来检索目录的内容和文件的筛选器以及预期的文件名。
它看起来可能是这样的:
extension FileManager {
func urls(of filename: String, in directory: URL) -> [URL]? {
guard let urls = try? contentsOfDirectory(at: directory, includingPropertiesForKeys: nil, options: [])
else { return nil }
return urls.filter { url in
!url.hasDirectoryPath && url.deletingPathExtension().lastPathComponent == filename
}
}
}
最后,有人会这样称呼它:
let directory = URL(string: "file:///Users/stephan/tmp")!
if let urls = FileManager.default.urls(of: "test", in: directory) {
for url in urls {
print("do something with url: \(url)")
}
}
https://stackoverflow.com/questions/71871231
复制相似问题