Problème lors du téléchargement d'une image

Problème lors du téléchargement d'une image - Java - Programmation

Marsh Posté le 16-05-2010 à 14:00:41    

Bonjour à tous!
 
J'ai un souci lorsque je veux récupérer une image depuis une url, j'arrive à télécharger l'image mais lorsque j'écris l'image sur le disque dur j'ai bien un fichier qui fait la bonne taille mais il n'y a rien dans l'image.  
voici mon code :

Code :
  1. private byte[] TelechargerRessource(String Surl){
  2.  byte []ByteImg = null;
  3.  try {
  4.      // Construct data
  5.      String data = URLEncoder.encode("key1", "UTF-8" ) + "=" + URLEncoder.encode("value1", "UTF-8" );
  6.      data += "&" + URLEncoder.encode("key2", "UTF-8" ) + "=" + URLEncoder.encode("value2", "UTF-8" );
  7.      // Send data
  8.      URL url = new URL(Surl);
  9.      URLConnection conn = url.openConnection();
  10.      conn.setDoOutput(true);
  11.      OutputStreamWriter wr = new OutputStreamWriter(conn.getOutputStream());
  12.      wr.write(data);
  13.      wr.flush();
  14.      // Get the response
  15.      InputStream rd = conn.getInputStream();
  16.     
  17.      BufferedReader in   = new BufferedReader (new InputStreamReader(rd));
  18.     
  19.      String line; 
  20.      StringBuffer sb=new StringBuffer();
  21.         while ((line = in.readLine()) != null)
  22.           {
  23.             sb.append(line);
  24.            }
  25.       in.close();
  26.      ByteImg=sb.toString().getBytes();
  27.      System.out.println(ByteImg.length);
  28.      rd.close();
  29.      wr.close();
  30.  } catch (Exception e) {
  31.   e.printStackTrace();
  32.  }
  33.  return ByteImg;
  34. }


 

Code :
  1. byte[] b=courants.TelechargerRessource(/* mon url */);
  2.  System.out.println(b.length);
  3.  File file = new File("img.png" );
  4.     BufferedOutputStream bos = null;
  5.  try {
  6.   bos = new BufferedOutputStream(new FileOutputStream(file));
  7.  } catch (FileNotFoundException e) {
  8.   // TODO Auto-generated catch block
  9.   e.printStackTrace();
  10.  }
  11.     try {
  12.   bos.write(b);
  13.  } catch (IOException e) {
  14.   // TODO Auto-generated catch block
  15.   e.printStackTrace();
  16.  }
  17.     try {
  18.   bos.close();
  19.  } catch (IOException e) {
  20.   // TODO Auto-generated catch block
  21.   e.printStackTrace();
  22.  }


Message édité par Profil supprimé le 16-05-2010 à 14:08:33
Reply

Marsh Posté le 16-05-2010 à 14:00:41   

Reply

Marsh Posté le 16-05-2010 à 14:07:23    

Je précise que l'image est au format png

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed