使用浏览按钮从Shiny UI(不仅仅是目录)获取文件路径而不上传文件

时间:2017-03-22 08:01:07

标签: r shiny dynamic-ui

我需要在R中处理一个巨大的文件(> 500mb)。因此,我不是在R环境中加载这么重的文件,而是以特定行数的块处理文件,最后得到聚合值。

我需要用户指定文件(使用某种浏览功能),以便我可以将文件路径提供给我的算法

fileConnection <-file( "../output/name.txt", open="w")

有没有办法根据用户指定的地址从Shiny UI获取文件路径?我尝试过ShinyFiles包,但它只提供选择目录,而不是文件。

谢谢你们!

1 个答案:

答案 0 :(得分:11)

此功能在library(shiny) library(shinyFiles) ui <- fluidPage( shinyFilesButton("Btn_GetFile", "Choose a file" , title = "Please select a file:", multiple = FALSE, buttonType = "default", class = NULL), textOutput("txt_file") ) server <- function(input,output,session){ volumes = getVolumes() observe({ shinyFileChoose(input, "Btn_GetFile", roots = volumes, session = session) if(!is.null(input$Btn_GetFile)){ # browser() file_selected<-parseFilePaths(volumes, input$Btn_GetFile) output$txt_file <- renderText(as.character(file_selected$datapath)) } }) } shinyApp(ui = ui, server = server) 包中提供。看看这个最小的例子:

googleMapCircle.tappable = true;

希望这有帮助!