[Socket] Probleme entre un Client C et un serveur JAVA
Bonjour à tous,
j 'ai deux applications qui communiquent entre elles par un system Client/Serveur. le serveur est écrit en java, le client, quant à lui est écrit en C.
Mon client envoie des chaines de caractères au serveur qui se contente des les afficher pour le moment. La connection à bien lieu, mais il n'affiche rien du tout.
je pense que cela vient du fait que JAVA travaille avec des chaines de caractères UNICODE, tandis que le C ne connais que l'ASCII.
Voici le code du serveur qui attend l'arrivée des chaines de caractères,
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
|
public class PolygenServer implements Runnable {
private DataInputStream fromClient;
private PrintStream toClient;
private Thread currentThread;
public PolygenServer() {
currentThread = new Thread(this);
currentThread.start();
}
public void run() {
try {
ServerSocket server = new ServerSocket(1234);
System.out.println("PolygenServer::Run ==> Create server");
System.out.println("PolygenServer::Run ==> Waiting for connexion");
Socket client = server.accept();
System.out.println("PolygenServer::Run : "+client);
fromClient = new DataInputStream(client.getInputStream());
toClient = new PrintStream(client.getOutputStream());
getAndDisplayMessages();
} catch (IOException ex) {
System.out.println("PolygenServer::Run ==> Can't create server");
}
}
public void getAndDisplayMessages() {
String line;
char Val;
do {
try {
line = fromClient.readUTF();
System.out.println(line);
} catch (IOException ex) {
System.out.print("End of reception");
line = null;
}
}
while (line != null);
}
} |
Mon serveur reste bloque sur la ligne readUTF() et n'en sort que lorsque mon client est mort.
Qui peut m'aider à sortir de cette galère !
merci d'avance
[Résolu][SocketProbleme entre un Client C et un serveur JAVA
Ok merci beaucoup pour votre aide,
Ca fonctionne correctement