源代码:
- library(shiny)
- # Define UI for data download app ----
- ui <- fluidPage(
-
- # App title ----
- titlePanel("Downloading Data"),
-
- # Sidebar layout with input and output definitions ----
- sidebarLayout(
-
- # Sidebar panel for inputs ----
- sidebarPanel(
-
- # Input: Choose dataset ----
- selectInput("dataset", "Choose a dataset:",
- choices = c("rock", "pressure", "cars")),
-
- # Button
- downloadButton("downloadData", "Download")
-
- ),
-
- # Main panel for displaying outputs ----
- mainPanel(
-
- tableOutput("table")
-
- )
-
- )
- )
- # Define server logic to display and download selected file ----
- server <- function(input, output) {
-
- # Reactive value for selected dataset ----
- datasetInput <- reactive({
- switch(input$dataset,
- "rock" = rock,
- "pressure" = pressure,
- "cars" = cars)
- })
-
- # Table of selected dataset ----
- output$table <- renderTable({
- datasetInput()
- })
-
- # Downloadable csv of selected dataset ----
- output$downloadData <- downloadHandler(
- filename = function() {
- paste(input$dataset, ".csv", sep = "")
- },
- content = function(file) {
- write.csv(datasetInput(), file, row.names = FALSE)
- }
- )
-
- }
- # Create Shiny app ----
- shinyApp(ui, server)
修改后的代码:
- library(shiny)
- # Define UI for data download app ----
- ui <- fluidPage(
-
- # App title ----
- titlePanel("Downloading Data"),
-
- # Sidebar layout with input and output definitions ----
- sidebarLayout(
-
- # Sidebar panel for inputs ----
- sidebarPanel(
-
- # Input: Choose dataset ----
- selectInput("dataset", "Choose a dataset:",
- choices = c("rock", "pressure", "cars")),
-
- # Button
- downloadButton("downloadData", "Download")
-
- ),
-
- # Main panel for displaying outputs ----
- mainPanel(
-
- tableOutput("table")
-
- )
-
- )
- )
- # Define server logic to display and download selected file ----
- server <- function(input, output) {
-
- # Reactive value for selected dataset ----
- datasetInput <- reactive({
- switch(input$dataset,
- "rock" = rock,
- "pressure" = pressure,
- "cars" = cars)
- })
-
- # Table of selected dataset ----
- output$table <- renderTable({
- datasetInput()
- })
-
- # Downloadable csv of selected dataset ----
- output$downloadData <- downloadHandler(
- filename = function() {
- paste(input$dataset,"你好", ".csv", sep = "")
- },
- content = function(file) {
- write.csv(datasetInput(), file, row.names = FALSE)
- }
- )
-
- }
- # Create Shiny app ----
- shinyApp(ui, server)
下载后的文件名:
rock%FFFFFFE4%FFFFFFBD%FFFFFFA0%FFFFFFE5%FFFFFFA5%FFFFFFBD.csv
我怀疑是编码的问题,在代码中增加这行代码:
也是乱码的文件名,不知道有没有大神遇到过此类问题,能否给出解决方案。复制代码
十分感谢


雷达卡



京公网安备 11010802022788号







