bonjour,
je voudrais telecharger un fichier (image) avec mon applet (ou une appli normale ) depuis le reseau pour le traité aprés, comment peut-on faire?
merci
bonjour,
je voudrais telecharger un fichier (image) avec mon applet (ou une appli normale ) depuis le reseau pour le traité aprés, comment peut-on faire?
merci
Qu'entends tu par depuis le réseau?
- Si ton fichier est sur un disque réseau, tu peux utiliser le fichier directement.
- S'il est accessible via http tu peux utiliser URL.openConnection()
Sinon essaie de préciser ton problème.
je veux telecharger le fichier depuis internet (http)
en faite je dois demander au serveur un fichier, c'est une servlet qui m'envoie le fichier, mais je connais pas l'implementation de la servlet pour l'instant,
je developpe une applet qui a besoin d'images qui sont dans le serveur, je suis pas doué pour les servlet, mais je pense que je dois communiquer avec la servlet,
donc j'ai besoin de savoir comment je peut faire le telechargement
merci
Tu fais
pour ouvrir un inputStream, puis tu lis le stream avec la fonction read avec quelque chose du genre
Code : Sélectionner tout - Visualiser dans une fenêtre à part InpuStream is = new URL(adresseDuFichier).openConnexion();
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7 byte[] buffer = new byte[256]; FileOutputStream fos = new FileOutputStream(nomFichier); while(is.read(buffer) > 0) { fos.write(buffer); }
S'il s'agit d'une image a utiliser directement, il y a encore plus simple:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 URL url = new URL("http://www.google.com/intl/fr_ALL/images/logo.gif"); JLabel jl = new JLabel(new ImageIcon(url));
A noter que dans le cas d'une applet (ou d'une appli en Java WebStart), si tu veux télécharger quelque chose qui n'est pas sur le même serveur que celui sur lequel ton appli/applet a été téléchargée, tu dois obligatoirement signer ton appli/applet.
Par exemple, si tu héberge ton applet sur www.monsite.com:
- si tu veux télécharger une image sur monsite.com, aucun souci.
- si tu veux télécharger une image sur google.com, ton appli/applet doit être signée et ses droits d'accès adaptés. Sinon, ton programme lèvera une SecurityException.
le serveur où est l'applet est le même pour les images.
en faite j'ai besoin du fichier (image) en local, en j'effectue plusieur telechargement : je telecharge un fichier xml, je le traite, puis dans le xml il ya des ulr d'images à telecharger.
pour la signature n'ya pas de probleme.
bref, si mon fichier se trouve sur http://serveur.com (c:/Mes images/monFichier.xml ou .jpg); comment je peut recuperer le fichier à partir de cette emplacment, sachant que je sais où il se trouve (c:/Mes images/monFichier)
parce que là j'essaye avec
mais url me donne l'adresse
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 url = new URL("http://localhost/" + filename); HttpURLConnection c = (HttpURLConnection) url.openConnection();si je fait ça :
Code : Sélectionner tout - Visualiser dans une fenêtre à part http://localhost/mon!fichier.xml
Erreur
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 c.setRequestMethod("GET"); c.setDefaultUseCaches(false);
merci de votre aide
Code : Sélectionner tout - Visualiser dans une fenêtre à part java.net.ConnectException: Connection refused: connect
Alors, si tu essayes de charger via : http://localhost/image.png, il faut qu'à partir de ton navigateur, tu puisses accèder à : http://localhost/image.png (car l'applet s'exécute côté client), sinon c'est mort.
Partager