在.NET中反序列化以null结尾的字符串的最佳方法是什么?

时间:2009-05-05 21:41:02

标签: .net binaryreader

我正在从我的网络连接中读取一条消息,该消息被序列化为一系列以空字符结尾的字符串(以及其他二进制数据)

我可以使用BinaryReader一次读取一个char,直到找到NULL。

还有一种更有效的方法仍然很简单吗?我期待字符串长度少于64个字符,但它们可能会更长。

2 个答案:

答案 0 :(得分:5)

我认为逐字节读取是一个合理的选择,但我会使用BufferedStream来最小化底层流上的IO。

答案 1 :(得分:2)

将整个内容读入字符串,然后使用String.Split拆分空值。

请记住,字符串在.NET中不是以空值终止的。