Laravel  
laravel
文档
数据库
架构
入门
php技术
    
Laravelphp
laravel / php / java / vue / mysql / linux / python / javascript / html / css / c++ / c#

c# tcp

作者:°妮可罗宾   发布日期:2025-05-01   浏览:78

using System;
using System.Net;
using System.Net.Sockets;
using System.Text;
using System.Threading;

class TcpServer
{
    private static void Listen()
    {
        // 创建一个监听对象,指定IP地址和端口号
        TcpListener listener = new TcpListener(IPAddress.Any, 13000);
        listener.Start();
        Console.WriteLine("Server started. Waiting for connections...");

        while (true)
        {
            // 接受客户端连接
            TcpClient client = listener.AcceptTcpClient();
            Console.WriteLine("Client connected.");

            // 启动新线程处理客户端请求
            Thread clientThread = new Thread(() => HandleClient(client));
            clientThread.Start();
        }
    }

    private static void HandleClient(TcpClient client)
    {
        NetworkStream stream = client.GetStream();

        try
        {
            while (true)
            {
                // 读取客户端发送的数据
                byte[] buffer = new byte[1024];
                int bytesRead = stream.Read(buffer, 0, buffer.Length);
                string message = Encoding.ASCII.GetString(buffer, 0, bytesRead);
                Console.WriteLine("Received: " + message);

                // 发送响应数据给客户端
                string response = "Message received";
                byte[] responseBytes = Encoding.ASCII.GetBytes(response);
                stream.Write(responseBytes, 0, responseBytes.Length);
            }
        }
        catch
        {
            Console.WriteLine("Client disconnected.");
        }
        finally
        {
            client.Close();
        }
    }

    static void Main(string[] args)
    {
        Listen();
    }
}

解释说明

  1. 创建监听器

    • 使用 TcpListener 类创建一个监听器,绑定到任意 IP 地址 (IPAddress.Any) 和指定的端口(例如 13000)。
    • 调用 Start() 方法启动监听器。
  2. 接受客户端连接

    • 使用 AcceptTcpClient() 方法等待并接受客户端连接。
    • 每当有新的客户端连接时,启动一个新的线程来处理该客户端的请求。
  3. 处理客户端请求

    • 在新线程中,使用 NetworkStream 对象与客户端进行通信。
    • 读取客户端发送的数据,并将其转换为字符串。
    • 发送响应消息回客户端。
    • 如果客户端断开连接或发生异常,则关闭连接。
  4. 主程序

    • Main 方法调用 Listen() 方法启动服务器。

这个示例展示了如何使用 C# 创建一个简单的 TCP 服务器,它能够接收来自客户端的消息并发送响应。

上一篇:c# contains

下一篇:cursor c#

大家都在看

c# 二进制

c# tcp client

c# type.gettype

c# sqlconnection

.net和c#

c#游戏开发

c#网络编程

c# rectangle

c# if else

c# rtsp

Laravel PHP 深圳智简公司。版权所有©2023-2043 LaravelPHP 粤ICP备2021048745号-3

Laravel 中文站