Каков наилучший способ десериализации строки с нулевым символом в конце в .NET? - PullRequest
2 голосов
/ 06 мая 2009

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

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

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

Ответы [ 2 ]

5 голосов
/ 06 мая 2009

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

2 голосов
/ 06 мая 2009

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

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

...