Esquisse java de traitement (serveur) ne répondant pas comme je le souhaite

J’ai créé un croquis de traitement Java. Ce croquis est le serveur. Tout ce que je veux que ce programme fasse, c’est que le client et le serveur puissent se connecter et écrire des messages (phrases) entre eux. Le cas 1 a été un succès, mais l’affaire 2 ne l’a pas été. J’ai expliqué le processus pour chaque cas et ce qui a mal tourné / réussi.

Cas 1) Sur le même ordinateur (Mac), j’ai démarré le programme du serveur et sur Terminal (“Invite de commandes” sur Mac), j’ai tapé telnet local host 5204 et le client (Mac) connecté au serveur (Mac). J’ai pu taper des phrases (ou des chaînes) entre le serveur et le client et cela a été un succès. Donc, quelle que soit la phrase que je tape dans le serveur, elle était visible pour le client et inversement. Remarque: le serveur et le client étaient tous deux sur le même ordinateur.

Cas 2) Sur le Mac, j’ai lancé le programme serveur. Sur un autre ordinateur (Windows 7), je me suis connecté au serveur via l’invite de commande. La connexion a été réussie. Dans ce cas, les chaînes peuvent être envoyées du serveur au client et les chaînes sont visibles par le client. Mais lorsque j’ai essayé d’envoyer des chaînes au serveur à partir du client, le serveur ne pouvait recevoir le caractère d’information que par caractère, et non pas en tant que phrase / chaîne complète. J’ai essayé de changer le numéro de port, le périphérique client, le frameRate, mais je n’ai toujours pas réussi.

C’est mon problème. S’il vous plaît commenter si ma question pourrait être plus claire ou si je dois donner plus de détails. Merci d’avoir répondu.

Voici mon code serveur:

 import processing.net.*; Server myServer; //Ssortingngs from server and client Ssortingng typing = ""; Ssortingng c = ""; void setup() { size(400, 400); //creating server on port 5204 myServer = new Server(this, 5204); } void draw() { background(255); //displaying server's text and client's text fill(0); text(typing, 100, 100); text("Client: " + c, 100, 150); Client client = myServer.available(); if(client != null) { //reading input from client c = client.readSsortingng(); c.sortingm(); } } void keyPressed() { //Server can type sentences to client if(key == '\n') { myServer.write(typing + '\n'); typing = ""; }else{ typing = typing + key; } } 

    Avez-vous essayé ncat pour Windows?

    Avec cela, vous pouvez essayer: echo Text to send & echo. | ncat localhost 5204 echo Text to send & echo. | ncat localhost 5204

    La source