R Shiny: unzip не выводит правильный путь к файлу в реактиве - PullRequest
0 голосов
/ 25 октября 2018

В блестящем приложении, если вы щелкнете по диалоговому окну открытия файла, оно запускает следующую реактивную функцию:

data <- reactive({
    file <- input$file
    req(file)
    if (is.null(file)) {
        return(NULL)
    }
    fpath <- file$datapath
    if (endsWith(".zip", fpath)) {
        fpath <- unzip(zipfile = fpath, files = NULL, overwrite = TRUE)
    }
    data <- read.csv(fpath, header = TRUE)
    data
})

Для файлов CSV оно запускается, как и ожидалось.Для ZIP-файлов fpath не становится путем к разархивированному CSV-файлу - он остается временным путем к ZIP-файлу и вызывает ошибку функции read.csv.Этот код работает, как и ожидалось, за пределами реактивного.Каждая попытка вставить код отладки в этот реактив или пройти через него в отладчике игнорируется.Он не будет печатать в stderr и т. Д.

Как распаковать ZIP-файл и прочитать его в CSV-файле?Эта статья не полностью отвечает на вопрос.Я думаю, что есть что-то в этой статье , но я не могу понять это вне моего собственного контекста.

1 Ответ

0 голосов
/ 25 октября 2018

У вас есть более полный пример?Для меня это работает, просто изменив if (endsWith(".zip", fpath)), если (endsWith(fpath, ".zip"))

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...