e come faccio a distinguere quando un file è stato completato, e bisogna ricevere un altro file, con un altro nome?
questa è la parte client della ricezione dei file
codice:
// Ora ricevo ciascun file
for(int i=0; i<numFiles; i++)
{
// Ricevo dal server la dimensione del file
int dimFile = receiveFromServer("dimFile", s);
System.out.println("DIM FILE RICEVUTO: "+dimFile);
BufferedInputStream in = new BufferedInputStream(s.getInputStream());
DataInputStream dataIn = new DataInputStream(s.getInputStream());
String fileReceived = dataIn.readUTF();
System.out.println("NOME FILE RICEVUTO: "+fileReceived);
FileOutputStream out = new FileOutputStream( new File("c:\\filericevuti\\"+fileReceived));
// Ricevo, a pacchetti di 4096 byte (4 KB), tutto il file
byte[] dati = new byte[4096];
int letti;
while( (letti = in.read( dati )) != -1 )
{
try
{
out.write( dati , 0 , letti );
}
catch( IOException e )
{
e.printStackTrace();
}
}
out.close();
System.out.println( "Ricezione completata dal server "+server_id+"!" );
}