так длинный рассказ, я пытаюсь разработать приложение, которое требует подключения Tcp к серверу. не имея предыдущего опыта в этой области, я закончил тем, что не работал ни одна из моих функций. поэтому я решил создать простое консольное приложение, чтобы проверить мои команды и их ответы. часть о настройке соединений прошла хорошо, так же как и часть, связанная с ворванием в сетевой поток (я думаю), но я ударил стену при попытке отобразить реакцию сервера: каждый раз, когда моя порграмма достигает линии, где она должна кодировать ответ сервера и WriteLine, мое консольное приложение становится черным, и все тексты уходят. вы можете сказать, что не так с кодом, который я использую, все до тех пор, пока часть, где консоль пытается отобразить ответ, идет хорошо, я проверил. я хочу иметь сервера акустический отклик как нормальные строки (если это возможно, я думаю ...)проблема с получением ответа сервера TcpClient в виде строки
static void ServerTalk(TcpClient tcpClient,NetworkStream networkStream, StreamWriter streamWriter, StreamReader streamReader)
{
//Messaging methods:
Console.WriteLine("Client: ");
string message = Console.ReadLine();
streamWriter.WriteLine(message);
streamWriter.Flush();
//Response methode:
byte[] data = new byte[tcpClient.ReceiveBufferSize];
int ret = networkStream.Read(data, 0, data.Length);
string respond = Encoding.ASCII.GetString(data).TrimEnd();
Console.WriteLine("Server: ");
Console.WriteLine(respond);
ServerTalk(tcpClient, networkStream, streamWriter, streamReader);
}
Я подозреваю, что вы отправляете нули в конце данных, которые отображаются как черные. Я прекратил бы данные у отправителя с возвратом ('\ n'), а затем в конце приема только напечатайте символ до возврата. – jdweng
как насчет рекурсивного вызова в конце метода? Как это должно работать? –
@HughJones я просто положил его так, чтобы все начиналось сначала, так как все, что приложение собирается делать, это блок кода, остальная часть кода работала и использовалась один раз, Думаю, мне нужно это приложение, чтобы сделать что-нибудь еще за пределами этого момента. – soorena12