Я новичок в работе с сетевыми вещами на C# и только что закончил создание модели клиент/сервер. Единственная проблема, с которой я сталкиваюсь, заключается в том, что когда я получаю данные, часть ее обрезается. Например, я отправляю сообщение «Hello there!», И он просто отправил «Hello».Сообщения клиента/сервера TCP/Mail не отправляются должным образом
Пример:
Мой код для сервера
public static TcpClient tcpcl = new TcpClient();
public static NetworkStream netstream;
static void Main(string[] args)
{
while(!tcpcl.Connected)
{
try
{
tcpcl.Connect("127.0.0.1", 1234);
}
catch
{
}
}
netstream = tcpcl.GetStream();
while(tcpcl.Connected)
{
byte[] buffer = new byte[tcpcl.ReceiveBufferSize];
int unicodeData = netstream.Read(buffer, 0, tcpcl.ReceiveBufferSize);
string plainText = Encoding.Unicode.GetString(buffer, 0, unicodeData);
Console.WriteLine(plainText);
}
tcpcl.Close();
}
Мой код клиента
public static TcpListener tcpl = new TcpListener(IPAddress.Any, 1234);
public static TcpClient tcpcl;
public static NetworkStream netstream;
static void Main(string[] args)
{
tcpl.Start();
Console.WriteLine("Waiting for connection...");
tcpcl = tcpl.AcceptTcpClient();
netstream = tcpcl.GetStream();
Console.WriteLine("Connection Established");
while(tcpcl.Connected)
{
Console.WriteLine("Enter a message: ");
string ptMessage = Console.ReadLine();
netstream.Write(Encoding.Unicode.GetBytes(ptMessage), 0, ptMessage.Length);
Console.WriteLine("Sent message");
}
tcpcl.Close();
}
Какая глупая ошибка. Спасибо за вашу помощь! – rrrrrrrrrrrrrrrr
Это случается. Иногда нам просто нужен дополнительный набор глаз ... –