我需要在R中处理一个巨大的文件(> 500mb)。因此,我不是在R环境中加载这么重的文件,而是以特定行数的块处理文件,最后得到聚合值。
我需要用户指定文件(使用某种浏览功能),以便我可以将文件路径提供给我的算法
fileConnection <-file( "../output/name.txt", open="w")
有没有办法根据用户指定的地址从Shiny UI获取文件路径?我尝试过ShinyFiles包,但它只提供选择目录,而不是文件。
谢谢你们!
答案 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;
希望这有帮助!