2016-10-11 13 views
1

画像をアップロードし、Shinyを使用して画像をサーバーファイルシステムに保存しようとしています。私は画像の詳細とデータパスを含むdata.frameを作成Rシャイニー:画像ファイルをアップロードしてサーバーに保存

fileInput 

を見つけたアップロードするには

。これはどのようにしてリモートサーバーに保存できますか?

+0

、あなたは 'FileInputクラス( 'FILE1' のようなものを述べるとき「 は= cで( 'テキスト/ CSV'、 \t \t \t \t \t \t \t \tを受け入れ、 'CSVファイルを選択してください'テキスト/カンマ区切り値、テキスト/平野、 \t \t \t \t \t \t \t \t '.CSV')) '、オブジェクト'入力の$ file1'は、サーバー側のファイルになります。そこからそのファイルを操作したり、保存したり(例えば 'write()')、SFTP、クラウドサービスなどを介してリモートサーバーに投稿することができます。これを読んでみてください:http://shiny.rstudio.com/articles/persistent-data-storage.html - ここではアップロードの例:http://shiny.rstudio.com/gallery/file-upload.html – nilsole

答えて

2

ここは基本的な例です。アップロードされたファイルはサーバー上の場所にのみコピーされます。これは同じコンピュータにありますが、どこにでもあります。 UI側で

library(shiny) 

shinyApp(
    ui = shinyUI( 
    fluidRow( 
     fileInput("myFile", "Choose a file", accept = c('image/png', 'image/jpeg')) 
    ) 
), 
    server = shinyServer(function(input, output,session){ 
    observeEvent(input$myFile, { 
     inFile <- input$myFile 
     if (is.null(inFile)) 
     return() 
     file.copy(inFile$datapath, file.path("c:/temp", inFile$name)) 
    }) 
    }) 
) 

shinyApp(ui, server) 
関連する問題