【发布时间】:2012-04-03 17:21:36
【问题描述】:
所以有一段时间我一直在使用 StreamReader/Writer 作为 TcpClient 的 NetworkStream 的包装器 - 主要是为了简单和节省时间。
在连接的两端使用流读取器/写入器时效果很好,但我注意到,当使用这些辅助类之一的端点不使用辅助对应时,奇怪的事情开始发生。流中附加的多余字节和其他奇怪的东西。
这让我想到,使用这些包装器可能会有一些不必要的开销?或者在使用 C++ 或 PHP 等其他语言开发客户端时可能存在兼容性问题。
使用 StreamReader 和 StreamWriter 辅助类有什么含义,有什么好处吗? (沿着错误处理或其他任何方式)
【问题讨论】:
-
文本读取器和写入器倾向于进行缓冲读取和写入。请参阅有关此行为的文档。
-
当你掌握了协议规范,主要是编码,那些“奇怪的东西”就会消失。
标签: c# networking networkstream