Каков наилучший способ десериализации строки с нулевым символом в конце в .NET?

StackOverflow https://stackoverflow.com/questions/827020

  •  05-07-2019
  •  | 
  •  

Вопрос

Я читаю сообщение от моего сетевого подключения, которое сериализуется как последовательность строк с нулевым символом в конце (и других двоичных данных)

Я мог читать символ за раз, используя BinaryReader, пока не найду NULL.

Есть ли более эффективный способ, который все еще прост? Я ожидаю строки длиной менее 64 символов, но они могут быть длиннее.

Это было полезно?

Решение

Я думаю, что побайтное чтение является разумным вариантом, но я бы использовал BufferedStream для минимизации ввода-вывода в основном потоке.

Другие советы

Прочитайте все это в строку, а затем используйте String.Split для разделения на нули.

Помните, что строки не заканчиваются нулем в .NET.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top