2016-03-22 22 views
2

Kullanıcı bir dosya yüklediğinde ve belirtilen bir klasöre kaydettiği Shiny'te bir program yazıyorum. Bunu yapmak için yöntem this question's answer dan alınmıştır.Parlak fileInput Dosya Adını Saklamıyor

Bunu yürüttüğümde, dosyanın belirtilen dosyaya kaydedildiğinde dosya adı soyulduğunu buldum. Klasördeki dosyaları okuyan program, dosya adının gözden geçirilmesini gerektirir. Bunu nasıl başarabilirim?

+0

Bir örnek verebilir misiniz? Orijinal isim neydi ve soyulmuş isim neydi? –

+1

Bu kelimenin tam anlamıyla herhangi bir isim ve '0'a sıyrılacaktır –

cevap

3

Değişim Bu iyi çalışıyor

file.copy(input$upload$datapath, paste0("your_folder/", input$upload$name)) 
+0

Dropbox' drop_upload' kullanma gibi bir dosya belirtmek mümkün mü yoksa sadece fiels'i bilgisayarınıza kopyalayabilir miyiz? –

0

için file.copy satır: dosyaları yerel olarak adlandırmak ve daha sonra bir forloop üzerinden yükleyin ve daha sonra yerel dosyaları kaldırmak. İşte benim için çalışan bir kod:

observe({ 
    if(!is.null(input$file_support)){ 
    browser() 
    files = file.rename(input$file_support$datapath, paste0(input$file_support$name)) 
    files = paste0(input$file_support$name) 
    n_files = length(files) 
    for(i in 1:n_files){ 
     drop_upload(files[i], dest = "drop_test") 
    } 
    file.remove(files) 
    } 
    }) 

})