【问题标题】:Does UdpClient need a StreamReader?UdpClient 是否需要 StreamReader?
【发布时间】:2016-08-10 01:28:36
【问题描述】:

因此,对于 TCPClient 和 SerialPort,我使用流读取器来提取数据行。我没有手动处理进入缓冲区的数据,而是让流读取器处理它。 TcpClient 有一个GetStream 方法,而SerialPort 似乎将 BaseStream 与他们的 ReadLine 方法一起使用。 UdpClient 但是没有与之关联的流。

我假设UdpClient.Receive 方法正在从缓冲区返回 1 行数据?或者它是否会在中间发送带有换行符的数据块?

【问题讨论】:

    标签: c# .net vb.net sockets udp


    【解决方案1】:

    与 TCP 不同,UDP 处理消息(数据报)。一条发送的消息等于收到零个或多个相同的消息。

    换句话说:你发送的就是你可能得到的,就像你发送的一样。

    【讨论】:

    • 所以基本上我可以假设换行符将在每个数据报的末尾?
    • 我不知道,这取决于您发送的内容,您没有显示。
    • 发送换行会有换行。如果您不发送换行符,则不会有一个。
    • 正确,所以如果我每秒接收 100 条消息,每条消息最后都有一个换行符,那么从 UdpClient.Receive 返回的每条消息最后都会有一个换行符。
    猜你喜欢
    • 1970-01-01
    • 2014-08-10
    • 2014-11-26
    • 2020-11-06
    • 2012-01-27
    • 2021-07-26
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多