Считать по 4 байта и записать в массив байтов - C#

Узнай цену своей работы

Формулировка задачи:

есть какой то TcpClient который отправляет данные на сервак мне нужно эти данные на сервере считать по 4 байта в один большой массив для дальнейшей работы с ним мой код вроде как работает но я ни как не могу записать этот один большой массив
Листинг программы
  1. byte[] masCount = new byte[4];
  2. TcpListener lis = new TcpListener(8840);
  3. lis.Start();
  4. var cl = lis.AcceptTcpClient();
  5. Console.WriteLine("connect");
  6.  
  7. cl.GetStream().Read(masCount, 0, masCount.Length);
  8. int fourByte = BitConverter.ToInt32(masCount, 0);
  9. Console.WriteLine(fourByte);
  10. byte[] readFourByte = new byte[4];
  11. byte[] input = new byte[fourByte];
  12. int i = 0;
  13. while (i < fourByte)
  14. {
  15. cl.GetStream().Read(readFourByte, 0, readFourByte.Length);
  16. //Console.WriteLine(Encoding.UTF8.GetString(readFourByte));
  17. input = Encoding.Default.GetBytes(Encoding.UTF8.GetString(readFourByte));
  18. i++;
  19. }
  20. Console.WriteLine(Encoding.UTF8.GetString(input));
  21. Console.ReadLine();

Решение задачи: «Считать по 4 байта и записать в массив байтов»

textual
Листинг программы
  1. List<byte> input = new List<byte>();
  2.             int i = 0;
  3.             while (i < fourByte)  
  4.             {
  5.                 cl.GetStream().Read(readFourByte, 0, readFourByte.Length);
  6.                 //Console.WriteLine(Encoding.UTF8.GetString(readFourByte));
  7.                 input.AddRange(Encoding.Default.GetBytes(Encoding.UTF8.GetString(readFourByte)));
  8.                 i++;
  9.             }  
  10. Console.WriteLine(Encoding.UTF8.GetString(input.ToArray()));

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

9   голосов , оценка 4.222 из 5

Нужна аналогичная работа?

Оформи быстрый заказ и узнай стоимость

Бесплатно
Оформите заказ и авторы начнут откликаться уже через 10 минут
Похожие ответы