2012-08-02 40 views
1

有没有办法从RGUI命令行启动MAC查找程序窗口?我正在浏览一大堆文件,看到该文件夹​​将非常有用,而不必使用list.files()用指定路径启动MAC查找程序窗口

+0

您是否在打开一个对话框来选择要输入的文件,或者只是打开一个Finder窗口? – 2012-08-02 15:48:30

回答

3

要从RGUI命令行打开Finder,直接解决方案是使用:

system("open /System/Library/CoreServices/Finder.app/") 

编辑:对于一个指定的路径,system("open ~/Desktop")将在用户的桌面上打开Finder,例如,因为在MacOSX上的默认应用程序打开任何目录是搜索。

+0

有没有办法指定在查找窗口中打开的路径? – JoshDG 2012-08-02 17:31:41

+0

@JoshDG:我编辑了我的答案,以在Finder窗口中指定路径。 – 2012-08-02 17:34:54

1

选择(并返回到R)使用Mac的本地文件选择对话框的文件可以做如下,尽管这种解决方案依赖于qtbase和Qt库:

library(qtbase) 
file_selector <- function(initial_dir=getwd(), multiple=FALSE) { 
    f <- Qt$QFileDialog() 
    ## configure 
    f$setDirectory(initial_dir) 
    if(multiple) 
    f$setFileMode(Qt$QFileDialog$ExistingFiles) 
    ## run 
    out <- f$exec() 
    if(out == 1) 
    f$selectedFiles() 
    else 
    NULL 
} 

如果您安装了AQUA TK库(不是X11的),那么可能会使用tkgetOpenFile,虽然我没有检查。