在C#中,可以使用TcpClient类来监听接收数据。以下是一个示例代码:
```csharp
using System;
using System.Net;
using System.Net.Sockets;
using System.Text;
public class TcpClientExample
{
public static void Main()
{
// 创建TcpClient对象,并连接到指定的IP地址和端口号
TcpClient client = new TcpClient();
client.Connect("127.0.0.1", 8080);
// 获取网络流对象
NetworkStream stream = client.GetStream();
// 接收数据的缓冲区
byte[] buffer = new byte[1024];
// 用于存储接收到的数据
StringBuilder data = new StringBuilder();
while (true)
{
// 读取网络流中的数据
int bytesRead = stream.Read(buffer, 0, buffer.Length);
// 如果没有数据可读,退出循环
if (bytesRead == 0)
{
break;
}
// 将接收到的数据转换为字符串并存储起来
data.Append(Encoding.ASCII.GetString(buffer, 0, bytesRead));
}
// 关闭网络流和TcpClient对象
stream.Close();
client.Close();
// 输出接收到的数据
Console.WriteLine("Received data: {0}", data.ToString());
}
}
```
在上述代码中,我们首先创建了一个TcpClient对象并连接到指定的IP地址和端口号。然后,我们获取TcpClient对象的网络流对象,并使用Read()方法从网络流中读取数据。读取到的数据被存储在一个StringBuilder对象中。最后,我们关闭网络流和TcpClient对象,并输出接收到的数据。