Untitled
unknown
csharp
2 years ago
2.5 kB
14
Indexable
using System;
using System.Collections.Generic;
using System.IO;
using System.Linq;
using System.Net.Sockets;
using System.Text;
using System.Threading;
using System.Threading.Tasks;
namespace Client
{
internal class Program
{
private static TcpClient tcpClient;
private static NetworkStream clientStream;
private static string clientName;
public static void Main(string[] args)
{
Console.WriteLine("Enter your name: ");
clientName = Console.ReadLine();
StartClient();
Console.ReadLine();
}
public static void StartClient()
{
try
{
tcpClient = new TcpClient("127.0.0.1", 8888);
clientStream = tcpClient.GetStream();
byte[] name = Encoding.ASCII.GetBytes(clientName);
clientStream.Write(name, 0, name.Length);
clientStream.Flush();
Console.WriteLine("Connected to the server...");
Thread receiveThread = new Thread(ReceiveMessages);
receiveThread.Start();
while (true)
{
Console.WriteLine("Enter a message: ");
string message = Console.ReadLine();
byte[] data = Encoding.ASCII.GetBytes(message);
clientStream.Write(data, 0, data.Length);
clientStream.Flush();
}
} catch (Exception ex)
{
Console.WriteLine(ex.Message);
}
}
public static void ReceiveMessages()
{
byte[] receivedBuffer = new byte[4096];
int bytesRead;
while (true)
{
try
{
bytesRead = clientStream.Read(receivedBuffer, 0, 4096);
}
catch
{
break;
}
if (bytesRead == 0)
{
break;
}
string serverMessage = Encoding.ASCII.GetString(receivedBuffer, 0, bytesRead);
Console.WriteLine(serverMessage);
}
Console.WriteLine("Disconnected from the server.");
Environment.Exit(0);
}
}
}Editor is loading...
Leave a Comment