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
- Socket客户端与服务端通讯实例
- socket实现服务端与客户端的通讯
- php socket客户端和服务端互相通讯实例
- socket通讯 客户端和服务端
- Socket客户端和服务端通讯
- socket实现服务端客户端通讯
- C++ socket编程 实现服务端与客户端的通讯
- socket实现客户端与服务端的通讯(群聊)
- socket编程 实现服务端与客户端的通讯
- C++ socket编程 实现服务端与客户端的通讯
- C++ socket编程 实现服务端与客户端的通讯
- JAVA使用Socket模拟服务端与客户端通讯
- C++ socket编程 实现服务端与客户端的通讯
- C++ socket编程 实现服务端与客户端的通讯
- Java Websocket实例【服务端与客户端实现全双工通讯】
- Socket客户端与服务端
- android 客户端与服务端通讯
- 【Android】Socket通讯示例(服务端/客户端)
- UNITY3d在移动设备上的一些优化实战(一)-概述
- Android6.0 Fingerprint Features(指纹识别)
- iOS不同界面之间传值的几种方法
- Stackoverflow上人气最旺的10个Java问题
- Hdoj 3926 Hand in Hand
- Socket客户端与服务端通讯实例
- bootstrap模态框(modal)使用remote方法加载数据,只能加载一次的解决办法
- java 实现 Comparable用法 排序方式
- Android:阴影效果的另一种实现方法:layer-list
- 黑马程序员_Java中++ -- 的注意事项
- mybatis 关联查询 一对一 一对多
- Go学习笔记:xml库的使用
- Unity开发-你必须知道的优化建议
- hdu 3966 Aragorn's Story 树链剖分