Bonjour à tous. Je suis en train de faire un prog qui permet le transfert de plusieurs fichiers à la suite (du serveur au client).

-ça fonctionne NIKEL pour un seul fichier-

J'ai tout tenté, mais je ne vois pas comment faire pour envoyer (par exemple) les 5 fichiers d'un dossier précis. (et surtout comment les recevoirs)

J'ai tenté pas mal de trucs, mais à chaque fois j'ai une erreur de type : "java.lang.NullPointerException" du coté client, et "Erreur : java.net.SocketException: Socket is closed".

Voici mon code du coté 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
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
 
public class Serveur {
 
protected static final int PORT=8086;
static ServerSocket ecoute;
static Socket ss;
private static int e=0;
static String type;
 
    public Serveur() {
             }
 
 
public void connect_serv(String fichier)
{
 
      while (true) // attente en boucle de connexion (bloquant sur ss.accept)
      {  try {
              ecoute=new ServerSocket(PORT);
              ss = ecoute.accept();         // un client se connecte, un nouveau thread client est lancé
             System.out.println("Connexion acceptée\n");
 
 
 
                BufferedOutputStream out = new BufferedOutputStream(ss.getOutputStream());
                File mon_fichier = new File(fichier);
                BufferedInputStream flux = new BufferedInputStream(new FileInputStream(mon_fichier));
                int tt = flux.available();
                byte[] buffer = new byte[10];
                int nbr = 0;
 
                while ((nbr = flux.read(buffer)) != -1) {
                    out.write(buffer, 0, nbr);
                }
                System.out.println("Fin du transfert de fichier");
                flux.close();
 
               out.close();
 
       } catch (Exception e){ 
            System.out.println("Erreur : " + e);
            System.exit(0);}
 
      }
 
 
 
   }
Que rajouter pour pouvoir tranférer plusieurs fichiers à la suite ???


Merci beaucoup bcp bcp.