using System;
using System.Net;
using System.Net.Sockets;
using System.Text;
using System.Threading;
namespace ChatServer{
class Program {
static void Main(string[] args)
{
IPAddress ipAddress = IPAddress.Parse("127.0.0.1");
TcpListener listener = new TcpListener(ipAddress, 5000);
listener.Start();
Console.WriteLine("Server started. Waiting for clients...");
while (true)
{
TcpClient client = listener.AcceptTcpClient();
Console.WriteLine("Client connected.");
Thread t = new Thread(() => handleClient(client));
t.Start();
}
}
private static void handleClient(TcpClient client)
{
NetworkStream stream = client.GetStream();
byte[] buffer = new byte[1024];
int bytesRead;
while (true)
{
bytesRead = stream.Read(buffer, 0, 1024);
if (bytesRead == 0) break;
string message = Encoding.ASCII.GetString(buffer, 0, bytesRead);
Console.WriteLine("Received message: " + message);
byte[] messageBytes = Encoding.ASCII.GetBytes("Received: " + message);
stream.Write(messageBytes, 0, messageBytes.Length);
}
stream.Close();
client.Close();
}
}
}