public class SocketServer {
public static void main(String[] args) {
try {
// 创建一个服务器ServerSocket,并指定端口号为5120
ServerSocket mServerSocket = new ServerSocket(5120);
// 等待客户端连接
Socket socket = mServerSocket.accept();
// 连接上客户端后,获取客户端输入流信息
InputStream is = socket.getInputStream();
// 通过获取缓冲数据方式来读取文本信息
BufferedReader br = new BufferedReader(new InputStreamReader(is));
// 获取文本信息
String line;
StringBuffer sb = new StringBuffer();
while ((line = br.readLine()) != null) {
sb.append(line);
}
System.out.println(sb.toString());
socket.shutdownInput();
// 收到客户端信息后,回复客户端信息
OutputStream os = socket.getOutputStream();
PrintWriter pw = new PrintWriter(os);
pw.write("收到回复,我是服务端");
pw.flush();
// 关闭流通常放在finally中操作
os.close();
br.close();
is.close();
pw.close();
socket.close();
mServerSocket.close();
} catch (IOException e) {
e.printStackTrace();
}
}
}
public class ClientSocket {
public static void main(String[] args) {
try {
// 创建客户端Socket,指定主机和端口
Socket mSocket = new Socket("localhost", 5120);
// 通过输入流向服务器发数据
OutputStream os = mSocket.getOutputStream();
PrintWriter pw = new PrintWriter(os);
pw.write("来自客户端Socket的数据,你收到了吗?");
pw.flush();
mSocket.shutdownOutput();
// 收取服务端的回复信息
InputStream is = mSocket.getInputStream();
// 通过获取缓冲数据方式来读取文本信息
BufferedReader br = new BufferedReader(new InputStreamReader(is));
// 获取文本信息
String line;
StringBuffer sb = new StringBuffer();
while ((line = br.readLine()) != null) {
sb.append(line);
}
System.out.println(sb.toString());
// 关闭流通常放在finally中操作
br.close();
is.close();
pw.close();
os.close();
mSocket.close();
} catch (UnknownHostException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
机械节能产品生产企业官网模板...
大气智能家居家具装修装饰类企业通用网站模板...
礼品公司网站模板
宽屏简约大气婚纱摄影影楼模板...
蓝白WAP手机综合医院类整站源码(独立后台)...苏ICP备2024110244号-2 苏公网安备32050702011978号 增值电信业务经营许可证编号:苏B2-20251499 | Copyright 2018 - 2025 源码网商城 (www.ymwmall.com) 版权所有