5

WindowsでJavaコードを使用して、サーバーに配置されたディレクトリからいくつかのファイルをダウンロードする必要があります。サーバー内のこれらのファイルは個別に生成されます。だから私はそれらのファイルの名前を知りません。JAVAを使用してダウンロードし、特定のフォルダに保存する方法はありますか。

私はapachetomcatを使用しています。

Javaファイルのダウンロードに関連する他のすべてのスレッドを読みました。しかし、それらのどれも私の要件を満たしていません。

4

6 に答える 6

6
  try {
        // Get the directory and iterate them to get file by file...
        File file = new File(fileName);

        if (!file.exists()) {
            context.addMessage(new ErrorMessage("msg.file.notdownloaded"));
            context.setForwardName("failure");
        } else {
            response.setContentType("APPLICATION/DOWNLOAD");
            response.setHeader("Content-Disposition", "attachment"+ 
                                     "filename=" + file.getName());
            stream = new FileInputStream(file);
            response.setContentLength(stream.available());
            OutputStream os = response.getOutputStream();      
            os.close();
            response.flushBuffer();
        }
    } catch (IOException e) {
        e.printStackTrace();
    } finally {
        if (stream != null) {
            try {
                stream.close();
            } catch (IOException e) {
                e.printStackTrace();
            }
        }
    }

あなたがいくつかのアイデアを持っていることを願っています...

于 2011-03-17T06:43:24.870 に答える
3

用途java.net.URLjava.net.URLConnectionクラス。

于 2011-03-17T06:25:53.080 に答える
2

こんにちは、次のコード スニペットを使用して、ファイルを直接ダウンできます。

    URL oracle = new URL("http://www.example.com/file/download?");
    BufferedReader in = new BufferedReader(
    new InputStreamReader(oracle.openStream()));

    String inputLine;
    while ((inputLine = in.readLine()) != null)
        System.out.println(inputLine);
    in.close();

この [URL] で openStream について参照してください: http://docs.oracle.com/javase/tutorial/networking/urls/readingURL.html

于 2012-09-06T12:23:38.937 に答える
2

HttpURLConnectionHTTP、HTTPS経由でファイルをダウンロードするために使用できます

于 2011-03-17T06:25:36.737 に答える
2

サーバーがディレクトリの内容をリストする場合にのみ可能です。存在する場合は、次の HTTP リクエストを作成できます。

http://サーバー:ポート/フォルダー

それはあなたにファイルのリストを与えるでしょう。

それができたら、この http 要求の場合に出力を解析して、個々のファイルをダウンロードできます。

于 2011-03-17T06:26:15.030 に答える
1

サーバーの場合、プロセスは、ファイルをダウンロードするために必要な FTP 資格情報を使用するようなものでなければなりません。このJava ファイルのダウンロード例が役立つ場合があります。

于 2012-04-13T03:55:22.090 に答える