(第三季)601-socket编程-tcp服务器端;602-socket编程-tcp客户端
来源:互联网 发布:手机视频慢动作软件 编辑:程序博客网 时间:2024/05/17 21:58
601-socket编程-tcp服务器端
一个软件对应一个端口号(0~6w)
/* socket编程 tcp协议 网络编程服务端*/using System;using System.Collections.Generic;using System.Linq;using System.Text;//using System.Net.Sockets;using System.Net;namespace taotao{ class Class1 { static void Main(string[] args) { #region 服务端 // 1,创建socket Socket tcpServer = new Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp); //2,绑定ip跟端口号192.168.0.112 IPAddress ipaddress = new IPAddress(new byte[] { 192, 168, 0, 112 }); EndPoint point = new IPEndPoint(ipaddress, 7788);//IPEndPoint 是对ip+端口做了一层封装的类 tcpServer.Bind(point);// 向操作系统申请了一个可用的ip跟端口号,用来做通信 //3, 开始监听(等待客户端连接) tcpServer.Listen(100);// 参数是最大连接数 Console.WriteLine("开始监听"); Socket clientSocket = tcpServer.Accept();//暂停当前线程,直到有一个客户端连接过来,之后进行下面的代码 Console.WriteLine("一个客户端连接过来了"); // 使用返回的socket 跟客户端做通信 string message = "hello 欢迎你!"; byte[] data = Encoding.UTF8.GetBytes(message); // 对字符串做编码,得到一个字符串的字节数组 clientSocket.Send(data); Console.WriteLine("向客户端发送了一条数据"); byte[] data2 = new byte[1024]; // 创建一个字节数组用来当做容器,去承接客户端发送过来的数据 int length = clientSocket.Receive(data2); string message2 = Encoding.UTF8.GetString(data2, 0, length);// 把字节数据转化为一个字符串 Console.WriteLine("接收到了一个从客户端发来的消息" + message2); #endregion } }}
之后启动客户端
/* socket编程 tcp协议 网络编程客户端*/using System;using System.Collections.Generic;using System.Linq;using System.Text;//using System.Net.Sockets;using System.Net;namespace taotao{ class Class1 { static void Main(string[] args) { #region 客户端 // 1,创建socket Socket tcpClient = new Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp); // 2,发起建立连接的请求 IPAddress ipaddress = IPAddress.Parse("192.168.0.112");// 可以把一个字符串的ip地址转化成一个ipaddress的对象 EndPoint point = new IPEndPoint(ipaddress, 7788); tcpClient.Connect(point);// 通过ip:端口号 定位一个要连接到的服务器端 byte[] data = new byte[1024]; int length = tcpClient.Receive(data); // 这里传递一个byte数组,实际上这个data数组用来接收数据 // length 返回值表示接收了多少字节的数据 string message = Encoding.UTF8.GetString(data, 0, length);// 只把接收到的数据进行一个转化 Console.WriteLine(message); // 向服务器端发送消息 string message2 = Console.ReadLine();// 读取用户的输入 把输入发送到服务器端 tcpClient.Send(Encoding.UTF8.GetBytes(message2));// 把字符串转化成字节数组,然偶发送到服务器端 #endregion } }}
0 0
- (第三季)601-socket编程-tcp服务器端;602-socket编程-tcp客户端
- 基于TCP的客户端、服务器端socket编程
- MFC Socket网络编程之TCP服务器端
- socket编程:简单TCP服务器/客户端编程
- socket 编程 服务器端-客户端
- 【Java Socket】入门系列 3.2.编程实现基于 TCP 的 Socket 通信 — 服务器端和客户端
- socket编程—TCP/IP 多客户端
- C++ TCP 服务器客户端Socket编程
- socket 编程之TCP服务端与客户端
- Socket编程:TCP客户端/服务器应用程序
- TCP Socket客户端编程(C++)
- MFC Socket网络编程之TCP客户端
- socket编程(TCP多线程客户端服务器)
- Socket编程练习(TCP)
- SOCKET TCP 编程
- Socket-TCP编程
- TCP socket编程模型
- TCP Socket服务器编程
- 图解HTTP读书笔记(九)
- Android EditText像TextView一样的样式
- JavaScript中局部变量与全局变量的不同
- 通过出生年月日计算年龄
- post请求参数的处理
- (第三季)601-socket编程-tcp服务器端;602-socket编程-tcp客户端
- swift_019(Swift 的类)
- php 第三方调用类。欢迎评论提意见
- mac 环境下 安装ga-cmd,命令行自动获取 google authenticator code
- Android获取屏幕宽高值
- Resin 启动多个服务
- HDU5956 The Elder(树上斜率DP)
- iOS图片边框不拉伸,内容拉伸
- LVC (videolan) 播放高清surface 出错解决方法