以交互方式保存文件?

时间:2011-01-22 20:53:33

标签: r file-io

使用tk_choose.filesfile.choose我能够以交互方式选择文件。是否有类似的功能,我可以让用户以交互方式决定在哪里保存write.table的输出?

4 个答案:

答案 0 :(得分:3)

在Windows 7上并通过RGUI,我可以指定类似的内容:

write.table(x = iris, file = file.choose())

弹出一个Windows资源管理器对话框。然后,我可以导航到任何现有文件,通过右键单击创建新文件,或者只需键入要在其中创建新文件的新文件的名称。

我想这可能与平台无关......其他人是否可以通过相应的操作系统进行验证?

答案 1 :(得分:2)

尝试

val <- tkgetSaveFile(initialfile="", title="Save a file...")
f <- tclvalue(val)
if(f != "") ...

答案 2 :(得分:1)

旧问题,但经过长时间的搜索后,我发现tcltk2包现在作为tcltk的改进而存在:

library(tcltk2)
filename <- tclvalue(tkgetSaveFile())
if (!nchar(filename)) {
  tkmessageBox(message = "No file was selected!")
} else {
  tkmessageBox(message = paste("The file selected was", filename))
}

答案 3 :(得分:0)

@Chase - 这适用于OS X(Eclipse和StatET)。至少,我尝试将data.frame(df)写为CSV文件:

write.csv(x = df, file = file.choose())