Tester image existe sur un serveur web [java]

Résolu/Fermé
leblogueur Messages postés 199 Date d'inscription dimanche 6 décembre 2009 Statut Membre Dernière intervention 23 novembre 2012 - 27 déc. 2011 à 05:19
leblogueur Messages postés 199 Date d'inscription dimanche 6 décembre 2009 Statut Membre Dernière intervention 23 novembre 2012 - 28 déc. 2011 à 01:08
Bonjour,
Ben tout est dans le titre je voudrai tester si une image existe sur un serveur (http://balabalka.com/monimage.png)
en java, Merci de m'aider :)



A voir également:

3 réponses

jisisv Messages postés 3645 Date d'inscription dimanche 18 mars 2001 Statut Modérateur Dernière intervention 15 janvier 2017 934
Modifié par jisisv le 27/12/2011 à 07:04
Essaye d'examiner les en-têtes:
johand@osiris: ~/src/CCM/java $ cat GetHttpHeaders.java 
import java.net.*; 

public class GetHttpHeaders{ 
    public static void main ( String[] args ) throws IOException { 
 if (args.length == 0 ) 
     { 
  System.err.println("Usage:  GetHttpHeaders url"); 
  System.exit(1); 
     } 
       
 try  
     { 
  URL url = new URL(args[0]); 
  URLConnection conn = url.openConnection(); 
  for (int i=0; ; i++)  
      { 
   String name = conn.getHeaderFieldKey(i); 
   String value = conn.getHeaderField(i); 
   if (name == null && value == null){ 
       break;  
   } 
   if (name == null){ 
       System.out.println("Server HTTP version, Response code:"); 
       System.out.println(value); 
       System.out.print("\n"); 
   } 
   else{ 
       System.out.println(name + "=" + value); 
   } 
      } 
     }  
 catch (Exception e) {} 
    } 
} 

johand@osiris: ~/src/CCM/java $ java GetHttpHeaders http://static.ccm2.net/www.commentcamarche.net/_skin/_local/img/logo.png?201007091112 
http://static.ccm2.net/www.commentcamarche.net/_skin/_local/img/logo.png?201007091112 
Server HTTP version, Response code: 
HTTP/1.1 200 OK 

Content-Type=image/png 
ETag="-1489846074" 
Accept-Ranges=bytes 
Last-Modified=Fri, 09 Jul 2010 09:37:19 GMT 
Content-Length=2909 
Server=lighttpd/1.4.13 
Cache-Control=max-age=31536000 
Date=Tue, 27 Dec 2011 05:57:57 GMT 
Connection=keep-alive


Gates gave ^H sold you the windows.
GNU gave us the whole house.(Alexandrin)
0
leblogueur Messages postés 199 Date d'inscription dimanche 6 décembre 2009 Statut Membre Dernière intervention 23 novembre 2012 12
Modifié par leblogueur le 27/12/2011 à 14:05
Alors, j'ai essayiez, ça pourrait fonctionner, mais je n'arrive pas a récupérez
la Field value


import java.io.IOException;
import java.io.OutputStream;
import java.net.*;

public class main{
public static void main ( String[] args ) throws IOException {


try
{
URL url = new URL("Url-a-tester.com");
URLConnection conn = url.openConnection();
for (int i=0; ; i++)
{
String name = conn.getHeaderFieldKey(i);
String value = conn.getHeaderField(i);



if (name == null && value == null){

break;

}
if (name == null){

System.out.println(value);

}
else{

}
if(value == "200")
{
System.out.println("le fichier existe");
}



}
}
catch (Exception e) {

}
}


}

Voila, une idée ?
Voila ma signature ^^
0
leblogueur Messages postés 199 Date d'inscription dimanche 6 décembre 2009 Statut Membre Dernière intervention 23 novembre 2012 12
28 déc. 2011 à 01:08
Voila pour ceux, qui comme moi veulent tester su un fichier existe sur un serveur Web
voici mon code :

import java.net.*;

public class main {

public static void main(String[] args) throws Exception {

URL url = new URL("http://site.com/fichier.png");
HttpURLConnection connection = (HttpURLConnection) url.openConnection();
// // Gets the status code from an HTTP response message.
int jh = connection.getResponseCode();
int fh = 200;


if(jh == fh)
{

System.out.println(" fichier existe code est: " + jh);
}
else
{
System.out.println(" fichier introuvable " + jh);
}
}
}



Si la reponsecode est 200, le fichier existe, si la reponsecode est 404, c'est que le fichier n'existe pas Voila :)
0