Socket客户端与服务端通讯实例

来源:互联网 发布:pe备份数据 编辑:程序博客网 时间:2024/04/27 17:52

1、建立服务器端

 |-服务器建立通信ServerSocket |-服务器建立Socket接收客户端连接 |-建立IO输入流读取客户端发送的数据 |-建立IO输出流向客户端发送数据消息

2、建立客户端

 |-创建Socket通信,设置通信服务器的IP和Port |-建立IO输出流向服务器发送数据消息 |-建立IO输入流读取服务器发送来的数据消息

Client.java

package Socket.C_S;import java.io.BufferedReader;import java.io.BufferedWriter;import java.io.IOException;import java.io.InputStreamReader;import java.io.OutputStreamWriter;import java.io.PrintStream;import java.net.InetAddress;import java.net.Socket;import java.net.UnknownHostException;public class Cleint {    public static void main(String[] args) {        try {            Socket s = new Socket(InetAddress.getLocalHost(), 10086);            while(true){                /*PrintStream ps = new PrintStream(s.getOutputStream());                ps.println("你好");*/                BufferedWriter writer = new BufferedWriter(new OutputStreamWriter(s.getOutputStream()));                writer.write("你好\n");                   //此处的换行符\n一定不能忘掉,否则socket无法判断客户端和服务端谁在输入                writer.flush();                BufferedReader br = new BufferedReader(new InputStreamReader(s.getInputStream()));                String result = br.readLine();                System.out.println("回复:"+result);                break;            }        } catch (UnknownHostException e) {            // TODO Auto-generated catch block            e.printStackTrace();            System.out.println(e.toString());        } catch (IOException e) {            // TODO Auto-generated catch block            e.printStackTrace();            System.out.println(e.toString());        }    }}

Server.java

package Socket.C_S;import java.io.BufferedReader;import java.io.BufferedWriter;import java.io.IOException;import java.io.InputStreamReader;import java.io.OutputStreamWriter;import java.io.PrintStream;import java.net.ServerSocket;import java.net.Socket;public class Server {    public static void main(String[] args) {        try {            ServerSocket ss = new ServerSocket(10086);            Socket s = ss.accept();            while(true){                BufferedReader br = new BufferedReader(new InputStreamReader(s.getInputStream()));                String str = br.readLine();                System.out.println("收到:"+str);                /*PrintStream ps = new PrintStream(s.getOutputStream());                ps.println("你也好");*/                BufferedWriter writer = new BufferedWriter(new OutputStreamWriter(s.getOutputStream()));                writer.write("你也好\n");              //此处的换行符\n一定不能忘掉,否则socket无法判断客户端和服务端谁在输入                writer.flush();                break;            }            //ss.close();        } catch (IOException e) {            // TODO Auto-generated catch block            e.printStackTrace();            System.out.println(e.toString());        }    }}
0 0
原创粉丝点击
热门问题 老师的惩罚 人脸识别 我在镇武司摸鱼那些年 重生之率土为王 我在大康的咸鱼生活 盘龙之生命进化 天生仙种 凡人之先天五行 春回大明朝 姑娘不必设防,我是瞎子 1岁宝宝吃粉笔怎么办 宝宝吃了彩色笔怎么办 宝宝吃了彩笔水怎么办 熹妃q传忘记密码怎么办 云课堂2忘记密码怎么办 云课堂密码忘了怎么办 小米云存储空间已经满怎么办 苹果手机云备份空间不足怎么办 办信用卡不知道公司电话怎么办 办信用卡不知道单位电话怎么办 朋友沉迷网络游戏怎么办英文作文 平板的密码忘了怎么办 白泥面膜过期了怎么办 小米手机桌面短信图标不见了怎么办 亚马逊账号注册扣款不成功怎么办 流量卡不用了怎么办啊 移动卡不想要了怎么办 b站调用速度过快怎么办 苹果系统占用19g怎么办 id被锁定了忘记密码怎么办 360儿童卫士忘记密码怎么办 微信注册忘记密码怎么办 旅行青蛙换手机iphone怎么办 网页邮箱添加不了附件怎么办 pos机密码忘了怎么办 在4楼上课地震了怎么办 微鲸电视待机打不开怎么办 苹果手机微信听不到语音怎么办 电信怎么办腾讯频看电视不要流量 孩子做事效率低怎么办教案 孩子做事效率低怎么办读后感 做事效率低总是焦虑怎么办 红米手机黑屏打不开怎么办 手机萤石云视频下载打不开怎么办 oppo打开网页视频慢怎么办? 晒课显示待提交怎么办 华为手机无法访问移动网络怎么办 晒课上传课堂实录太大怎么办 手机酷狗音乐下载要钱怎么办 手机酷狗下载要钱怎么办 酷我音乐没有声音怎么办