R SHINY:下载现有文件 [英] R Shiny: Download existing file

查看:13
本文介绍了R SHINY:下载现有文件的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

假设我的闪亮应用程序(即位于服务器上)中有一个现有的zip文件(out.zip)。我希望用户能够下载此文件。这个问题与this one非常相似。但是,问题压缩了downloadHandler中文件,而我的案例中已存在该压缩文件。

library(shiny)

app <- list(
  ui = fluidPage(
    titlePanel(""),
    sidebarLayout(
      sidebarPanel(
        downloadButton("downloadData", label = "Download")
      ),
      mainPanel(h6("Sample download", align = "center"))
    )
  ),

  server = function(input, output) {  
    output$downloadData <- downloadHandler(
      filename <- function() {
        paste("output", "zip", sep=".")
      },

      content <- function(file) {
        # not sure what to put here???
      },
      contentType = "application/zip"
    )
  }
)

shiny::runApp(app)

推荐答案

仔细研究了不同的文件处理函数后,我发现file.copy可以用于下载该文件。

我将downloadHandler更改为:

output$downloadData <- downloadHandler(
  filename <- function() {
    paste("output", "zip", sep=".")
  },

  content <- function(file) {
    file.copy("out.zip", file)
  },
  contentType = "application/zip"
)

这篇关于R SHINY:下载现有文件的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆