برنامه چت TCP/IP با استفاده از سی شارپ
برنامه چت TCP/IP یک سیستم ارتباطی است که به کاربران این امکان را میدهد تا بهصورت همزمان با یکدیگر گفتگو کنند. در اینجا، ما به بررسی نحوه ایجاد چنین برنامهای با استفاده از زبان برنامهنویسی سی شارپ میپردازیم. این برنامه شامل دو بخش اصلی است: سرور و کلاینت.
سرور
برای شروع، ابتدا باید یک سرور TCP راهاندازی کنیم. این سرور به درخواستهای ورودی از کلاینتها گوش میدهد و پیامها را مدیریت میکند.
```csharp
using System;
using System.Net;
using System.Net.Sockets;
using System.Text;
class Server
{
static void Main()
{
TcpListener server = new TcpListener(IPAddress.Any, 8888);
server.Start();
Console.WriteLine("Server started...");
while (true)
{
TcpClient client = server.AcceptTcpClient();
Console.WriteLine("Client connected.");
NetworkStream stream = client.GetStream();
byte[] buffer = new byte[1024];
int bytesRead = stream.Read(buffer, 0, buffer.Length);
string message = Encoding.ASCII.GetString(buffer, 0, bytesRead);
Console.WriteLine("Received: " + message);
stream.Write(buffer, 0, bytesRead); // Echo back
client.Close();
}
}
}
```
کلاینت
پس از راهاندازی سرور، نوبت به کلاینت میرسد. این کلاینت میتواند پیامی را به سرور ارسال کرده و پاسخ را دریافت کند.
```csharp
using System;
using System.Net.Sockets;
using System.Text;
class Client
{
static void Main()
{
TcpClient client = new TcpClient("
- 0.0.1", 8888);
string message = "Hello, Server!";
byte[] data = Encoding.ASCII.GetBytes(message);
stream.Write(data, 0, data.Length);
Console.WriteLine("Sent: " + message);
byte[] buffer = new byte[1024];
int bytesRead = stream.Read(buffer, 0, buffer.Length);
string response = Encoding.ASCII.GetString(buffer, 0, bytesRead);
Console.WriteLine("Received: " + response);
client.Close();
}
}
```
عملکرد
در این برنامه، سرور بهصورت مداوم در حال گوش دادن به درخواستهای کلاینت است. زمانی که کلاینت متصل میشود، سرور پیام ارسالی را دریافت کرده و آن را بهصورت خودکار به کلاینت برمیگرداند. این یک سیستم ساده چت است که میتواند بهراحتی گسترش یابد.
نتیجهگیری
ایجاد یک