上传到 Shiny 服务器后在 R 中解压文件

3 zip r esri shiny

我正在尝试在我们的本地服务器上使用 Shiny 来构建一个应用程序,允许用户上传包含 ESRI shapefile 和关联文件的 .zip 文件。Shiny 服务器的 fileInput 可以获取数据,并且当它这样做时,它会将其存储在临时目录和文件名中。该文件名似乎总是一个相当通用的“0”。如果我手动尝试解压缩文件“0”,它会起作用。但是,如果我尝试使用 R 函数 unz (我收集的应该可以工作)以编程方式执行此操作,则会失败,错误消息是它“无法打开 zip 文件“0”。我不知道为什么。任何人都可以帮忙吗?

这是代码:

shinyServer(function(input, output) {

mySHPdata <- reactive({
inFile <- input$file1

if (is.null(inFile))
  return(NULL)
print((inFile$datapath))

data<-read.table(unz(basename(inFile$datapath), "testme.shp"))
Run Code Online (Sandbox Code Playgroud)

必须将相关文件一一提取,因此这里我仅举例说明尝试打开其中一个文件。有人知道为什么这不起作用吗?

Joe*_*eng 5

它不应该是basename(inFile$datapath),只是inFile$datapath,否则R不知道在哪里可以找到该0文件。