using System;
using System.Net;
using System.Net.Sockets;
using System.Text;
class Program
{
static void Main(string[] args)
{
// 创建一个Socket对象,指定协议族、套接字类型和协议类型
Socket socket = new Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp);
try
{
// 定义服务器的IP地址和端口号
IPAddress ipAddress = IPAddress.Parse("127.0.0.1");
int port = 5000;
// 将IP地址和端口号组合成IPEndPoint对象
IPEndPoint ipEndPoint = new IPEndPoint(ipAddress, port);
// 连接到服务器
socket.Connect(ipEndPoint);
Console.WriteLine("连接到服务器成功");
// 发送数据
string message = "Hello, Server!";
byte[] sendData = Encoding.UTF8.GetBytes(message);
socket.Send(sendData);
Console.WriteLine("发送数据: " + message);
// 接收数据
byte[] receiveData = new byte[1024];
int receivedBytes = socket.Receive(receiveData);
string receivedMessage = Encoding.UTF8.GetString(receiveData, 0, receivedBytes);
Console.WriteLine("收到数据: " + receivedMessage);
// 关闭连接
socket.Shutdown(SocketShutdown.Both);
socket.Close();
}
catch (Exception e)
{
Console.WriteLine("发生错误: " + e.Message);
}
}
}
创建Socket对象:
new Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp)
创建一个TCP类型的Socket对象。定义服务器信息:
IPAddress.Parse("127.0.0.1")
:指定服务器的IP地址(这里使用本地环回地址)。int port = 5000
:指定服务器的端口号。连接到服务器:
socket.Connect(ipEndPoint)
方法连接到指定的服务器。发送数据:
socket.Send(sendData)
发送数据。接收数据:
socket.Receive(receiveData)
接收来自服务器的数据,并将其转换为字符串格式。关闭连接:
socket.Shutdown(SocketShutdown.Both)
关闭读写操作,然后使用socket.Close()
关闭Socket。异常处理:
try-catch
块捕获并处理可能发生的异常。上一篇:c#invoke
Laravel PHP 深圳智简公司。版权所有©2023-2043 LaravelPHP 粤ICP备2021048745号-3
Laravel 中文站