cs_robx2309
Messages postés5Date d'inscriptionmardi 2 mars 2010StatutMembreDernière intervention 9 décembre 2011
-
9 déc. 2010 à 18:37
cs_robx2309
Messages postés5Date d'inscriptionmardi 2 mars 2010StatutMembreDernière intervention 9 décembre 2011
-
12 déc. 2010 à 16:27
Bonsoir tout le monde,
Voilà j'ai un problème avec mon programme :
Je veux envoyer un fichier .txt d'une machine serveur (OutputStreamWriter) à une machine client (BufferedReader). Mon application fonctionne pour l'instant en localhost, client et serveur sur ma machine.
Or dés que le serveur écrit une ligne du fichier (serveur.txt) dans son flux de sortie, NullPointerException est levée côté client, et ceci même avec un Thread.sleep(1000) côté serveur.
Voici donc mon code :
Serveur :
import java.io.*;
import java.net.*;
public class Serveur{
public static void main(String[] args){
String fichServeur="serv.txt";
File fe=new File(fichServeur);
if (!(fe.exists())){
System.err.println("Le fichier " + fichServeur+ " n'existe pas.");
System.exit(1);
}//if
ServerSocket srv;
int port=555;
String b="";
try{
BufferedReader buffServeur = new BufferedReader(new FileReader(fichServeur));
//InputStream in = connexion.getInputStream();
srv = new ServerSocket(port);
while(true){
Socket connexion = srv.accept();
OutputStreamWriter out = new OutputStreamWriter(connexion.getOutputStream());
System.out.println("Connexion établie avec " + connexion.getLocalAddress());
Thread.sleep(1000);
while(b!=null){
b=buffServeur.readLine();
System.out.println(b);
out.write(b + "\r\n");
System.out.println("-->On envoie");
}
connexion.close();
}//while
}//try
catch(IOException e){System.err.println(e);}
catch(InterruptedException e){System.err.println(e);}
}//main
}//class
cs_robx2309
Messages postés5Date d'inscriptionmardi 2 mars 2010StatutMembreDernière intervention 9 décembre 2011 11 déc. 2010 à 14:12
Ah d'accord.
Mais en faite je me dis que le readLine ne marche pas parce que rien ne s'écrit dans mon fichier client.txt (qui est censé recevoir le contenu de serveur.txt)
Vous n’avez pas trouvé la réponse que vous recherchez ?
cs_robx2309
Messages postés5Date d'inscriptionmardi 2 mars 2010StatutMembreDernière intervention 9 décembre 2011 12 déc. 2010 à 16:27
Pourtant sur ce port je peux envoyer des données du client au serveur, le readLine() côté serveur marche bien.
C'est juste quand le serveur envoie au client que ca foire