C#TCP服务端通讯
时间: 2024-11-08 22:12:09 浏览: 10
在C#中,创建一个TCP服务端通讯通常涉及到以下几个步骤:
1. **命名空间导入**:
首先,需要导入System.Net套件下的TcpListener和Socket等相关命名空间。
```csharp
using System;
using System.Net;
using System.Net.Sockets;
```
2. **创建监听器**:
使用TcpListener类监听指定的IP地址和端口。例如,localhost和5000端口。
```csharp
TcpListener listener = new TcpListener(IPAddress.Any, 5000);
```
3. **开始监听**:
开始监听连接请求,并提供一个事件处理程序来处理新的客户端连接。
```csharp
listener.Start();
```
4. **等待连接并处理**:
通过`Accept()`方法接受新连接,每次都会返回一个新的TcpClient实例,可以从中读取和写入数据。
```csharp
TcpClient client = await listener.AcceptTcpClientAsync();
```
5. **读写数据**:
创建网络流(NetworkStream),然后使用StreamReader读取字节,StreamWriter发送响应。
```csharp
using (var networkStream = client.GetStream())
{
using (var reader = new StreamReader(networkStream))
{
string request = reader.ReadLine(); // 接收请求
// 对请求进行处理...
var response = "服务器响应"; // 编写响应
using (var writer = new StreamWriter(networkStream))
{
writer.WriteLine(response); // 发送响应
}
}
}
```
6. **关闭连接**:
客户端通信结束后,记得关闭连接。
```csharp
client.Close();
```
7. **停止监听**:
当所有连接都处理完毕后,关闭监听器。
```csharp
listener.Stop();
```
阅读全文