我们正尝试编写一组空间文件并将其ZIP压缩到一个文件夹中,然后可以使用闪亮的R的下载处理程序进行下载。由于我们的需求需要R的模块,因此我们坚持使用Shiny R在Web上发布它。我们原本希望下载zip文件,但单击下载按钮后会下载一个空的html文件(我们正在Windows10 OS上使用R 4.0.0。,并在Chrome上运行代码)。
我们还研究了R在其中编写shapefile的tempDir,似乎没有问题,只是在压缩和下载文件时才出现问题。我们正在处理的下载处理程序片段是
output$Download <- downloadHandler(
filename = function(){
paste("crown_shp", "zip", sep = ".")
},
content = function(fname) {
print(fname)
tmpdir <- tempdir()
setwd(tempdir())
print(tempdir())
writeOGR(crown, tmpdir, "crown", overwrite_layer = TRUE, driver="ESRI Shapefile")
#zip_file <- file.path(tmpdir, "crown_shp.zip")
shp_files <- list.files(tmpdir,
"crown",
full.names = TRUE)
zip(zipfile=fname, files=shp_files)
},
contentType = "application/zip"
)
我们在R中得到的警告是' zip警告:名称不匹配'
任何帮助将不胜感激。谢谢!