分享

Socket 实现同一网络下的实时通信

 收藏小管 2017-11-08
客户端:MyClient
package socketdemo;

import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.io.PrintWriter;

import java.net.Socket;
import java.net.UnknownHostException;



public class MyClient {
Socket client;
PrintWriter pw;
public MyClient() throws UnknownHostException, IOException{
    client=new Socket("10.241.143.54",7777);
//第一个参数是做服务器端的电脑ipv4,dis下敲  ipconfig可以查看,第二个参数是端口,///客户端和服务器端一致
    pw=new PrintWriter(client.getOutputStream());
    BufferedReader br=new BufferedReader(new InputStreamReader(System.in));

    while(true)    {
    System.out.println("请输入信息:");
    if(client.isClosed())
    {
        client=new Socket("10.241.143.54", 7777);
        pw=new PrintWriter(client.getOutputStream());
        br=new BufferedReader(new InputStreamReader(System.in));
    }
    pw.println(br.readLine());
    pw.flush();
    client.close();
}


}
public static void main(String[] args)
{
    try {
        new MyClient();
    } catch (IOException e) {
        // TODO Auto-generated catch block
        e.printStackTrace();
    }
}
}
服务器端:MyServer

import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.net.ServerSocket;
import java.net.Socket;

public class MyServer {
private Socket socket;
private ServerSocket ss;
public MyServer() throws IOException{
    ss=new ServerSocket(7777);
    while(true)
    {
        System.out.println("等待信息%%%%");
        socket=ss.accept();
        BufferedReader bReader=new BufferedReader(new InputStreamReader(socket.getInputStream()));
        System.out.println("your input is:"+bReader.readLine());
    }
}
public static void main(String[] args)
{
    try {
        new MyServer();
    } catch (IOException e) {
        // TODO Auto-generated catch block
        e.printStackTrace();
    }
}
}



    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多