Svp aidez moi à trouver l'erreur:
j'ai 3 classe ici. je n'ai pas mis les classes interface:
Serveur:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
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 package envoi_fichier; import static envoi_fichier.Transfert.transfert; import java.io.*; import java.net.*; public class Serveur2 { public Serveur2() { String fichier_recu="t"; try { ServerSocket ss = new ServerSocket(7000); System.out.println("le serveur est en attente de connexion!"); Socket s =ss.accept(); FileInputStream is =(FileInputStream) s.getInputStream(); System.out.println("Connexion etablie ok!"); System.out.println("reception du fichier en cours!"); BufferedInputStream buff= new BufferedInputStream(is); BufferedReader in=new BufferedReader(new InputStreamReader(buff)); fichier_recu=in.readLine(); System.out.println(fichier_recu); transfert(s.getInputStream(),new FileOutputStream("F:\\beans\\serveur\\"+fichier_recu), true); System.out.println("Fichier reçu!"); System.out.println("Chemin du fichier: F:\\beans\\serveur\\"+fichier_recu); } catch (IOException e) { } } }
Client:
La classe Transfert:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
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 package envoi_fichier; import static envoi_fichier.Transfert.transfert; import java.io.*; import java.net.*; import java.nio.file.Path; public class Envoie { public String repertoire; public String ip; public int chaine_port; public Envoie(String repertoire, String ip, int chaine_port) { super(); try{ Socket s=new Socket(ip, chaine_port); transfert(new FileInputStream(repertoire),s.getOutputStream(),true); s.close(); System.out.println(repertoire); System.out.println("Transfert terminé!"); }catch(IOException e){ } } }
L'attribut réception est censé êrtre le fichier reçu du serveur, mais le serveur me renvoie 'null'.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
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 package envoi_fichier; import java.io.IOException; import java.io.InputStream; import java.io.OutputStream; public class Transfert { public static void transfert(InputStream is, OutputStream os, boolean closeOnExit) throws IOException{ byte buf[] = new byte[1024]; int n; while((n=is.read(buf))!=-1) os.write(buf,0,n); if (closeOnExit){ is.close(); os.close(); } } }
Merci de m'aider.
Voici le résultat chez le serveur:
le serveur est en attente de connexion!
Connexion etablie ok!
reception du fichier en cours!
null
Fichier reçu!
Chemin du fichier: F:\beans\serveur\null
Partager