WindowsでJavaコードを使用して、サーバーに配置されたディレクトリからいくつかのファイルをダウンロードする必要があります。サーバー内のこれらのファイルは個別に生成されます。だから私はそれらのファイルの名前を知りません。JAVAを使用してダウンロードし、特定のフォルダに保存する方法はありますか。
私はapachetomcatを使用しています。
Javaファイルのダウンロードに関連する他のすべてのスレッドを読みました。しかし、それらのどれも私の要件を満たしていません。
WindowsでJavaコードを使用して、サーバーに配置されたディレクトリからいくつかのファイルをダウンロードする必要があります。サーバー内のこれらのファイルは個別に生成されます。だから私はそれらのファイルの名前を知りません。JAVAを使用してダウンロードし、特定のフォルダに保存する方法はありますか。
私はapachetomcatを使用しています。
Javaファイルのダウンロードに関連する他のすべてのスレッドを読みました。しかし、それらのどれも私の要件を満たしていません。
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();
}
}
}
あなたがいくつかのアイデアを持っていることを願っています...
用途java.net.URL
とjava.net.URLConnection
クラス。
こんにちは、次のコード スニペットを使用して、ファイルを直接ダウンできます。
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
HttpURLConnection
HTTP、HTTPS経由でファイルをダウンロードするために使用できます
サーバーがディレクトリの内容をリストする場合にのみ可能です。存在する場合は、次の HTTP リクエストを作成できます。
それはあなたにファイルのリストを与えるでしょう。
それができたら、この http 要求の場合に出力を解析して、個々のファイルをダウンロードできます。
サーバーの場合、プロセスは、ファイルをダウンロードするために必要な FTP 資格情報を使用するようなものでなければなりません。このJava ファイルのダウンロード例が役立つ場合があります。