一尘不染

使用其URL检查文件在远程服务器上是否存在

java

如何在Java中检查Java文件是否存在于具有URL的远程服务器上(由HTTP服务)?我不想下载该文件,只需检查其存在。


阅读 266

收藏
2020-09-08

共1个答案

一尘不染

import java.net.;
import java.io.
;

public static boolean exists(String URLName){
    try {
      HttpURLConnection.setFollowRedirects(false);
      // note : you may also need
      //        HttpURLConnection.setInstanceFollowRedirects(false)
      HttpURLConnection con =
         (HttpURLConnection) new URL(URLName).openConnection();
      con.setRequestMethod("HEAD");
      return (con.getResponseCode() == HttpURLConnection.HTTP_OK);
    }
    catch (Exception e) {
       e.printStackTrace();
       return false;
    }
  }

如果与URL的连接(使用HttpURLConnection)以HTTP状态代码200返回,则该文件存在。

编辑: 请注意,由于我们只关心它的存在与否,所以不需要请求整个文档。我们可以使用HTTP HEAD
request方法
来请求标头,以检查其是否存在。

来源:http//www.rgagnon.com/javadetails/java-0059.html

2020-09-08