用C sharp语言写一个socket 通信的封装类
时间: 2023-03-25 19:04:00 浏览: 75
好的,我可以回答这个问题。首先,需要使用 System.Net.Sockets 命名空间来实现 socket 通信。可以定义一个 SocketClient 类,其中包含连接、发送和接收数据等方法。具体实现可以参考以下代码:
using System;
using System.Net;
using System.Net.Sockets;
using System.Text;
public class SocketClient
{
private Socket _clientSocket;
public void Connect(string ip, int port)
{
_clientSocket = new Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp);
_clientSocket.Connect(new IPEndPoint(IPAddress.Parse(ip), port));
}
public void Send(string message)
{
byte[] data = Encoding.UTF8.GetBytes(message);
_clientSocket.Send(data);
}
public string Receive()
{
byte[] buffer = new byte[1024];
int length = _clientSocket.Receive(buffer);
return Encoding.UTF8.GetString(buffer, , length);
}
public void Close()
{
_clientSocket.Shutdown(SocketShutdown.Both);
_clientSocket.Close();
}
}
以上代码实现了一个简单的 socket 通信封装类,可以通过 Connect 方法连接服务器,通过 Send 方法发送数据,通过 Receive 方法接收数据,通过 Close 方法关闭连接。