こんにちはゲストさん。会員登録(無料)して質問・回答してみよう!

締切り済みの質問

Javaでのファイルアップ、ダウンロードについて

Javaでのファイル(画像やテキストなど)の
アップロードとダウンロードの仕組みについて、質問をさせていただきます。

上記を実現するにはストリームを利用することで実現可能であることを知りました。Javaの道具?としてinputstreamとoutputstreamがあります。
ストリームの仕組みについて、教えていただけないでしょうか。

以下は私の想定です。
◇アップロードの場合
端末上でアップロードしたいファイルを用意すると、inputstreamがファイルをプログラム上(メモリ?)にデータをコピーします。そのあとoutputsreamでプログラム上にコピーしたデータをサーバー上にコピーする。

◇ダウンロードの場合
サーバー上のファイルをinputstreamでプログラム上(メモリ?)にコピーして、outputstreamでプログラム上にコピーされたデータをローカルにコピーする。

投稿日時 - 2020-09-30 20:07:08

QNo.9805989

困ってます

このQ&Aは役に立ちましたか?

0人が「このQ&Aが役に立った」と投票しています

回答(1)

ANo.1

一番簡単な例としてHTTPサーバーから自分の端末にファイルをダウンロードする場合を考えます。
Javaの場合、HttpURLConnectionというクラスを使ってまずHTTPサーバーと接続します。接続が成功したら、HttpURLConnectionクラスのgetInputStream()メソッドで得られるInputStreamを使ってHTTPサーバーからのデータをメモリに読み出せます。読み出したデータはFileOutputStreamクラスを使ってファイルに書き出すことができます。
「HttpURLConnection ファイル ダウンロード」でネット検索すればサンプルプログラムが見つかります。
HttpURLConnectionを使って逆にHTTPサーバーへファイルをアップロードすることもできますが、HTTPサーバー側がそれを受け付けるようになっている必要があります。

HTTP以外のプロトコルでファイルをアップロード・ダウンロードしたい場合はそれに応じてやり方が変わります。

投稿日時 - 2020-10-01 12:19:18

あなたにオススメの質問