小编ste*_*ock的帖子

使用R Shiny从XLConnect下载Excel文件

有没有人尝试使用R Shiny中的下载处理程序下载带有XLConnect的新创建的Excel文件?

在ui.R中有一条不起眼的线:

downloadButton('downloadData', 'Download')
Run Code Online (Sandbox Code Playgroud)

在server.R中有处理程序:

output$downloadData <- downloadHandler(

filename = function() { "output.xlsx" },

    content = function(file){
      wb <- loadWorkbook(file, create = TRUE)
      createSheet(wb, name = "Sheet1")
      writeWorksheet(wb, c(1:3), sheet = "Sheet1") # writes numbers 1:3 in file
      saveWorkbook(wb)
    }
)
Run Code Online (Sandbox Code Playgroud)

我下载.csv没有问题,使用XLConnect创建excel文件没问题.但是当我运行上面的代码时,我的Chrome浏览器出现以下错误:

IllegalArgumentException(Java):不支持文件扩展名"file1b683b9323bc"!只允许*.xls和*.xlsx!

据我所知,XLConnect无法写入临时文件.

有没有人有解决方案或解决方法?

一种选择是将文件保存在特定位置,然后创建指向它的下载链接.然而,由于多个用户会导致havok,因此这不是很闪亮.

非常感谢

马库斯

excel r download shiny xlconnect

15
推荐指数
1
解决办法
4896
查看次数

R Shiny中的环境

http://shiny.rstudio.com/articles/scoping.html上,很好地解释了有光泽的范围规则.有3个环境或级别彼此嵌套:函数内,会话内和所有会话中可用的对象.使用< - 将更改您所在环境中的对象,<< - 将全局更改它,即对于所有会话.

如果我在会话中定义变量但想要在函数中更改它,该怎么办?

< - 只会在函数内更改它,因此其他函数无法读取,<< - 将为所有会话更改它.中间什么都没有?就像"只是一级"?

environment r scoping shiny

7
推荐指数
1
解决办法
4299
查看次数

有没有办法阻止下载页面在R Shiny中打开?

在闪亮的应用程序中单击下载按钮后,将打开一个新页面以初始化下载.但是,我的下载处理程序需要一些时间来生成可下载文件,该文件显示在主闪亮页面的进度条中.有没有办法让用户保持在主页面上或阻止下载页面打开或推迟下载页面,直到文件生成?

非常感谢

马库斯

r download button shiny

5
推荐指数
1
解决办法
2534
查看次数

将一个markdown文件编织为两个输出文件

有没有办法将单个.md文件编织到R中工作目录中的.html或.docx,同时将.html的副本发布到另一个文件夹,可能在另一个驱动器上?

或者,可以使用RStudio中的"发布"按钮将.md文件发送到RPubs以外的位置吗?

markdown r knitr r-markdown

4
推荐指数
2
解决办法
1304
查看次数

标签 统计

r ×4

shiny ×3

download ×2

button ×1

environment ×1

excel ×1

knitr ×1

markdown ×1

r-markdown ×1

scoping ×1

xlconnect ×1