「Drobox SDKをVB.netで使う方法(チュートリアル)」で、チュートリアルに書いてあるコードをVB.netで実現しました。
次は、画像をアップロード、ダウンロードするコードを書いてみることにしました。
画像アップロードButton、画像ダウンロードButtonを追加しました。
前回と同様、非同期の処理なので「Private Async Sub」となっている点に注意してください。
画像をアップロードする
1 2 3 4 5 6 7 8 9 10 11 12 13 |
Private Async Sub 画像アップロードButton_Click(sender As Object, e As EventArgs) Handles 画像アップロードButton.Click Dim strAccessTalken As String = "[アクセストークン]" Dim folder As String = "/A" Dim file As String = "1.jpg" Dim buffer As Byte() buffer = IO.File.ReadAllBytes(My.Application.Info.DirectoryPath & "\" & file) Dim mem = New MemoryStream(buffer) Dim dbx = New DropboxClient(strAccessTalken) Dim updated = Await Task.Run(Function() dbx.Files.UploadAsync(folder + "/" + file, WriteMode.Overwrite.Instance, body:=mem)) RichTextBox1.Text &= String.Format("Saved {0}/{1} rev {2}", folder, file, updated.Rev) End Sub |
スポンサーリンク
画像をダウンロードして保存する
1 2 3 4 5 6 7 8 9 10 11 12 13 |
Private Async Sub 画像ダウンロードButton_Click(sender As Object, e As EventArgs) Handles 画像ダウンロードButton.Click Dim strAccessTalken As String = "[アクセストークン]" Dim folder As String = "/DL" Dim file As String = "1.jpg" Dim dbx = New DropboxClient(strAccessTalken) Dim response = Await Task.Run(Function() dbx.Files.DownloadAsync(folder + "/" + file)) Dim buffer As Byte() buffer = Await response.GetContentAsByteArrayAsync() IO.File.WriteAllBytes("C:\temp\1.jpg", buffer) End Sub |
「C:\temp\1.jpg」にダウンロードしています。
パスは「¥」ではなく「/」を使っている点に注意です。