היי,
אני מנסה להעביר מסר מלקוח לשרת באמצעות הקלדה ב SYSTEM.IN
אני מצליח ליצור קשר בין השרת ללקוח אבל לא כל ההודעות שאני מקליד בלקוח מגיעות לשרת , לדוגמה אני מקליד
1
2
3
4
יגיע רק 3 או פעם אחת רק 4 .. בקיצור לא כל ההקלדות מגיעות.
זה הקוד :
לקוח :
import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.io.PrintWriter; import java.net.ServerSocket; import java.net.Socket; import java.net.UnknownHostException; public class Client {
public static void main(String args) throws IOException { PrintWriter out; BufferedReader input; String string; Socket mysocket = new Socket("localhost", 1212); out= new PrintWriter(mysocket.getOutputStream(),true); input = new BufferedReader(new InputStreamReader(mysocket.getInputStream())); BufferedReader in=new BufferedReader(new InputStreamReader(System.in)); //for the exit command. string = in.readLine(); while (!(in.readLine().equals("exit"))) { out.println(in.readLine()); out.flush(); } mysocket.close(); } } |
שרת
import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.io.PrintWriter; import java.net.ServerSocket; import java.net.Socket; public class Server {
public static void main(String args) throws IOException { BufferedReader in = null; PrintWriter sockout=null; // TODO Auto-generated method stub // TODO Auto-generated method stub
ServerSocket socket= new ServerSocket(1212); Socket Myclient = socket.accept(); System.out.println("Client Connected"); sockout = new PrintWriter(Myclient.getOutputStream(),true); in = new BufferedReader(new InputStreamReader(Myclient.getInputStream())); while (!(in.readLine().equals("exit"))){ System.out.println("says : " + in.readLine()); } } }
|
קופון 15% הנחה ל myprotein
https://www.myprotein.co.il/referrals.list?applyCode=ORON-R4