Comment puis-je vérifier en Java si un fichier existe sur un serveur distant (desservi par HTTP), en ayant son URL ? Je ne veux pas télécharger le fichier, juste vérifier son existence.
Si la connexion via une URL (établie avec HttpURLConnection) renvoie le code d’état HTTP 200, le fichier existe.
import java.net.*;
import java.io.*;
public static boolean exists(String URLName){
try {
HttpURLConnection.setFollowRedirects(false);
HttpURLConnection con =
(HttpURLConnection) new URL(URLName).openConnection();
con.setRequestMethod("HEAD");
return (con.getResponseCode() == HttpURLConnection.HTTP_OK);
}
catch (Exception e) {
e.printStackTrace();
return false;
}
}
En supposant que le fichier soit servi par http, vous pouvez envoyer une requête HEAD à l’URL et vérifier le Code de réponse http renvoyé.