socket的tcp编程 秒速五厘米 2022-10-02 02:52 159阅读 0赞 /\*\* \* 服务器端 \*/ public class MyServer \{ public MyServer()\{ try \{ //让该进程在在本机的9999号端口监听 ServerSocket ss = new ServerSocket(9999); System.out.println("我是服务器,在9999号端口监听"); //等待客户端来连接,该函数会返回一个socket连接,若客户端不来连接它会一直在这里处于等待状态 //直到客户端连接了9999端口它才会继续执行下面的操作 Socket s = ss.accept(); //读取s中传过来的数据 InputStreamReader isr = new InputStreamReader(s.getInputStream()); BufferedReader br = new BufferedReader(isr); String meg = br.readLine(); System.out.println("服务器收到:"+meg); //服务器端向客户端发送数据 PrintWriter pw = new PrintWriter(s.getOutputStream(),true); pw.print("我是服务器,你好!"); \} catch (Exception e) \{ e.printStackTrace(); \} \} public static void main(String\[\] args) \{ MyServer ms = new MyServer(); \} \} /\*\* \* 客户端 \*/ public class MyClient \{ public MyClient()\{ try \{ //scoket用来连接服务器,127.0.0.1是服务器ip,9999是服务器端口 Socket s = new Socket("127.0.0.1",9999); //s与服务器建立连接后就可以给服务器发送数据 //通过pw向s中写东西,true表示即时刷新 PrintWriter pw = new PrintWriter(s.getOutputStream(),true); pw.print("我是客户端,你好吗?"); //接收服务器端传过来的数据 InputStreamReader isr = new InputStreamReader(s.getInputStream()); BufferedReader bf = new BufferedReader(isr); String msg = bf.readLine(); System.out.println("我是客户端,收到服务端的消息:" + msg); \} catch (Exception e) \{ // TODO: handle exception \} \} public static void main(String\[\] args) \{ MyClient mc = new MyClient(); \} \}
还没有评论,来说两句吧...