我正在使用以下代码从我控制的网络服务器下载文件
URL url = new URL("http://........");
HttpURLConnection connection = (HttpURLConnection)url.openConnection();
connection.setDefaultUseCaches(false);
connection.setUseCaches(false);
connection.setRequestMethod("GET");
connection.setDoOutput("true");
connection.connect();
InputStream in = connection.getInputStream();
File dst = new File(".......");
FileOutputStream out = new FileOutputStream(dst);
byte[] buffer = new byte[1024];
int len = 0;
while ((len=in.read(buffer))>0) {
out.write(buffer,0,len);
}
connection.disconnect();
in.close();
out.close();
减去所有必要的尝试捕获。上面的代码适用于将文件下载到我的特定目的地。但是无法下载最新版本(例如,如果我更改网络服务器上的文件内容)
就好像某物正在保留它之前下载的文件的某种缓存,只要 URL 与以前相同,它就会发回相同的文件。我的数据连接在下载期间变为活动状态,因此我的服务提供商可能会出现这种情况
我需要的是某种方式来强制我的代码主动刷新目标文件。我发现网络浏览器能够做到这一点。如果我用网络浏览器输入链接,然后再次运行我的代码,最新版本会被下载