Allows content from the Shiny application to be made available to the user as
file downloads (for example, downloading the currently visible data as a CSV
file). Both filename and contents can be calculated dynamically at the time
the user initiates the download. Assign the return value to a slot on
output
in your server function, and in the UI use
downloadButton()
or downloadLink()
to make the
download available.
downloadHandler(filename, content, contentType = NA, outputArgs = list())
filename | A string of the filename, including extension, that the user's web browser should default to when downloading the file; or a function that returns such a string. (Reactive values and functions may be used from this function.) |
---|---|
content | A function that takes a single argument |
contentType | A string of the download's
content type, for
example |
outputArgs | A list of arguments to be passed through to the implicit
call to |
## Only run examples in interactive R sessions if (interactive()) { ui <- fluidPage( downloadButton("downloadData", "Download") ) server <- function(input, output) { # Our dataset data <- mtcars output$downloadData <- downloadHandler( filename = function() { paste("data-", Sys.Date(), ".csv", sep="") }, content = function(file) { write.csv(data, file) } ) } shinyApp(ui, server) }