在C#中使用HPSocket,需要先安装HPSocket库,然后通过引用该库来使用其中的类和方法。
以下是一个简单的示例,演示如何使用HPSocket库来创建一个TCP服务器和客户端:
服务器端代码:
csharpusing System;
using System.Net;
using System.Net.Sockets;
using HPSocket.Framework;
class Program
{
static void Main()
{
// 创建TCP监听器
TcpListener server = new TcpListener(IPAddress.Any, 12345);
server.Start();
Console.WriteLine("服务器已启动,等待连接...");
// 接收客户端连接请求
TcpClient client = server.AcceptTcpClient();
Console.WriteLine("已连接客户端:" + client.Client.RemoteEndPoint.ToString());
// 接收客户端发送的数据
NetworkStream stream = client.GetStream();
byte[] buffer = new byte[1024];
int bytesRead = stream.Read(buffer, 0, buffer.Length);
string data = Encoding.UTF8.GetString(buffer, 0, bytesRead);
Console.WriteLine("收到的数据:" + data);
// 向客户端发送数据
string response = "Hello, 客户端!";
byte[] responseBuffer = Encoding.UTF8.GetBytes(response);
stream.Write(responseBuffer, 0, responseBuffer.Length);
Console.WriteLine("已发送响应给客户端:" + response);
// 关闭连接
client.Close();
server.Stop();
}
}
客户端代码:
csharpusing System;
using System.Net;
using System.Net.Sockets;
using HPSocket.Framework;
class Program
{
static void Main()
{
// 创建TCP客户端并连接到服务器
TcpClient client = new TcpClient();
client.Connect("127.0.0.1", 12345);
Console.WriteLine("已连接到服务器:" + client.Client.RemoteEndPoint.ToString());
// 发送数据给服务器
NetworkStream stream = client.GetStream();
string message = "Hello, 服务器!";
byte[] messageBuffer = Encoding.UTF8.GetBytes(message);
stream.Write(messageBuffer, 0, messageBuffer.Length);
Console.WriteLine("已发送数据给服务器:" + message);
// 接收服务器响应的数据
byte[] buffer = new byte[1024];
int bytesRead = stream.Read(buffer, 0, buffer.Length);
string response = Encoding.UTF8.GetString(buffer, 0, bytesRead);
Console.WriteLine("从服务器收到的响应:" + response);
// 关闭连接
client.Close();
}
}
本文暂时没有评论,来添加一个吧(●'◡'●)