Bonjour,
je cherche à télécharger un fichier zip via un programme Java basé sur mon ordinateur. J'ai fouillé le web à la recherche de source, pas une seule ne fonctionne...
Y'a t-il une méthode spécifique ? Quelqu'un à t-il déjà fait cela ?
Version imprimable
Bonjour,
je cherche à télécharger un fichier zip via un programme Java basé sur mon ordinateur. J'ai fouillé le web à la recherche de source, pas une seule ne fonctionne...
Y'a t-il une méthode spécifique ? Quelqu'un à t-il déjà fait cela ?
télécharger d'o, quel protocole, quel code as-tu essayé, quelles erreurs as-tu eu?
Code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51 import java.net.*; import java.io.*; public class Programme { public static void Affiche(String HOST) { try { URL racine = new URL(HOST); getFile(racine); } catch (MalformedURLException e) { System.err.println(HOST + " : URL non comprise."); } catch (IOException e) { System.err.println(e); } } public static void getFile(URL u) throws IOException { URLConnection uc = u.openConnection(); String FileType = uc.getContentType(); int FileLenght = uc.getContentLength(); if (FileLenght == -1) { throw new IOException("Fichier non valide."); } InputStream in = uc.getInputStream(); String FileName = u.getFile(); FileName = FileName.substring(FileName.lastIndexOf('/') + 1); FileOutputStream WritenFile = new FileOutputStream(FileName); byte[]buff = new byte[1024]; int l = in.read(buff); while(l>0) { WritenFile.write(buff, 0, l); l = in.read(buff); } WritenFile.flush(); WritenFile.close(); } public static void main(String[] args){ Affiche("https://media.fdj.fr/generated/game/loto/nouveau_loto.zip"); } }
Ca compile, ca s 'execute mais ca ne fait rien...
peux tu préciser "rien", ca afficher un message d'erreur? Ca crée un fichier vide?.....
Vu votre code, soit il y aura message d'erreur, soit fichier (plein ou vide).
Ca ne creer ni fichier ni erreur...
Salut,
Le code n'est pas parfait (pas de try/finally pour libérer les ressources, il manque un close(), les règles de nommages ne sont pas toujours respecté), mais il fonctionne normalement et télécharge bien le fichier...
Tu lances cela comment ? Depuis quel répertoire ?
a++
es-tu sur de chercher le fichier au bon endroit? Affiche le nom complet du fichier (getAbsolutePath) avant de quitter.