服务器端
using System;
using System.Net;
using System.Net.Sockets;
using System.Text;
class Server
{
static void Main()
{
// IP地址和端口号
string host = "127.0.0.1";
int port = 9999;
// 创建一个Socket实例
Socket serverSocket = new Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp);
// 将Socket绑定到本地地址和端口
IPEndPoint localEndPoint = new IPEndPoint(IPAddress.Parse(host), port);
serverSocket.Bind(localEndPoint);
// 开始监听连接
serverSocket.Listen(10); // 最大等待连接数为10
Console.WriteLine("等待客户端连接...");
// 接受客户端连接
Socket clientSocket = serverSocket.Accept();
Console.WriteLine("客户端已连接.");
// 发送数据给客户端
byte[] data = Encoding.ASCII.GetBytes("欢迎访问!");
clientSocket.Send(data);
// 关闭连接
clientSocket.Shutdown(SocketShutdown.Both);
clientSocket.Close();
// 关闭服务器Socket
serverSocket.Close();
}
}
客户端
using System;
using System.Net.Sockets;
using System.Text;
class Client
{
static void Main()
{
// 服务器的IP地址和端口号
string host = "127.0.0.1";
int port = 9999;
// 创建一个Socket实例
Socket clientSocket = new Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp);
// 连接到服务器
IPAddress ipAddress = IPAddress.Parse(host);
IPEndPoint remoteEP = new IPEndPoint(ipAddress, port);
clientSocket.Connect(remoteEP);
Console.WriteLine("已连接到服务器.");
// 接收数据
byte[] data = new byte[1024];
int bytes = clientSocket.Receive(data);
Console.WriteLine(Encoding.ASCII.GetString(data, 0, bytes));
// 关闭连接
clientSocket.Shutdown(SocketShutdown.Both);
clientSocket.Close();
}
}