美文网首页
tcpServe服务器端

tcpServe服务器端

作者: 萧非子 | 来源:发表于2017-02-09 23:33 被阅读0次

    using System;

    using System.Collections.Generic;

    using System.Linq;

    using System.Net.Sockets;

    using System.Net;

    using System.Text;

    using System.Threading.Tasks;

    namespace TCPSocketServer

    {

    class Program

    {

    static void Main(string[] args)

    {

    Console.WriteLine("服务端已经启动");

    // 服务器端Socket

    // 1. 创建了一个 Socket连接对象  参数:(1、寻址方案, 2、Socket数据传输格式, 3、Socket数据传输协议)

    Socket tcpServer = new Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp);

    // 包装一个IP地址。  通过byte数组来传递。  每一个元素,代表IP地址的一段。总共4段

    IPAddress address = new IPAddress(new byte[]{192,168,1,85});

    // ipPoint 里面就包含了 IP地址信息和端口信息

    IPEndPoint ipPoint = new IPEndPoint(address,12358);

    //2. 绑定IP地址和端口

    tcpServer.Bind(ipPoint);

    //3. 监听,或者说允许多少个客户端访问

    tcpServer.Listen(25);

    //4. 等待客户端的连接,会卡住当前线程, 如果有客户端连接上,那么就返回这个客户端的信息。 所以返回值类型是Socket

    Socket clientSocket = tcpServer.Accept();

    string sendMessage = "Hello Welcome Connect!";

    // 5. 给连接上的客户端发送消息。 发送的内容要求是byte ,所以我们要对传递的字符串做一个转换

    clientSocket.Send(Encoding.UTF8.GetBytes(sendMessage));

    // 6. 接收客户端的消息

    byte[] reciveData = new byte[1024];

    int dataLength = clientSocket.Receive(reciveData);

    //把byte数组中的数据转换成字符串

    string receiveString = Encoding.UTF8.GetString(reciveData, 0, dataLength);

    Console.WriteLine("接收到客户端的消息" + receiveString);

    Console.WriteLine("程序执行完毕");

    Console.ReadKey();

    }

    }

    }

    相关文章

      网友评论

          本文标题:tcpServe服务器端

          本文链接:https://www.haomeiwen.com/subject/ukdiittx.html