显示文件夹';使用Swift在finder中保存内容
我想能够选择一个文件夹,并显示其内容在查找。我已经成功地选择了文件夹本身,并在文件夹中选择了一个文件。但我不知道如何显示空文件夹的内容 e、 g 文件夹A/B 我想显示文件夹B的内容(可能是空的) 我编写了以下代码:显示文件夹';使用Swift在finder中保存内容,swift,directory,finder,nsworkspace,Swift,Directory,Finder,Nsworkspace,我想能够选择一个文件夹,并显示其内容在查找。我已经成功地选择了文件夹本身,并在文件夹中选择了一个文件。但我不知道如何显示空文件夹的内容 e、 g 文件夹A/B 我想显示文件夹B的内容(可能是空的) 我编写了以下代码: func showFolder(fileName : String) { var dataPath = homeDirectory.stringByAppendingPathComponent(fileName) var urlPath = NSURL(fileUR
func showFolder(fileName : String)
{
var dataPath = homeDirectory.stringByAppendingPathComponent(fileName)
var urlPath = NSURL(fileURLWithPath: dataPath)
var selectedURLs = [urlPath!]
NSWorkspace.sharedWorkspace().activateFileViewerSelectingURLs(selectedURLs)
}
这只会打开突出显示文件夹B的文件夹A。这很接近,但不完全正确
我需要能够打开文件夹B没有突出显示。我显然使用了错误的命令。使用该方法并将nil
作为第一个参数传递,将文件夹的路径作为第二个参数显示
NSWorkspace.shared.selectFile(nil, inFileViewerRootedAtPath: "/Users/")
Swift 2.1启动OS X Finder的代码 使用
selectFile
或activateFileViewerSelectingURLs
选择文件
使用您的路径字符串在查找器中选择1项
NSWorkspace.sharedWorkspace().selectFile(YOUR_PATH_STRING, inFileViewerRootedAtPath: "")
第二个参数使用空字符串,如果为此参数指定空字符串“”,则会在主查看器中选择该文件
如果要选择一个或多个文件,请使用
activateFileWebSelectingUrls(\uFileUrls:[NSURL])
选择一个文件
NSWorkspace.sharedWorkspace().activateFileViewerSelectingURLs([NSURL].init(arrayLiteral: NSURL.init(fileURLWithPath: YOUR_PATH_STRING)))
选择多个文件的步骤
let urls : [NSURL] = [NSURL.init(fileURLWithPath: "/Users/USER_NAME/Pictures"),
NSURL.init(fileURLWithPath: "/Users/USER_NAME/Music")]
如果提供的项目不在同一文件夹中,则会打开更多选择指定文件的窗口
let urls : [NSURL] = [NSURL.init(fileURLWithPath: "/Users/USER_NAME/Pictures"),
NSURL.init(fileURLWithPath: "/Users/USER_NAME/Music"),
NSURL.init(fileURLWithPath: "/Users")]
2020 | SWIFT 5.1:
func showInFinder(url: URL?) {
guard let url = url else { return }
if url.isDirectory {
NSWorkspace.shared.selectFile(nil, inFileViewerRootedAtPath: url.path)
}
else {
showInFinderAndSelectLastComponent(of: url)
}
}
func showInFinderAndSelectLastComponent(of url: URL) {
NSWorkspace.shared.activateFileViewerSelecting([url])
}
展品目录:
- 文件夹的url=将显示在文件夹的查找器内容中
- 文件的url=将在Finder文件的父级中打开并在那里选择文件
- Url为nil=将不起任何作用
- 文件/路径不存在=将不执行任何操作