从 NetworkStream 读取到定界符
Read from NetworkStream to delimiter
从 NetworkStream 读取到某个定界符(例如“\n”)的最佳方法是什么
我有以下代码:
NetworkStream clientStream = tcpClient.GetStream();
var message = new byte[4096];
while (true)
{
int bytesRead = 0;
try
{
bytesRead = clientStream.Read(message, 0, 4096);
}
catch
{
// Exception
}
Response(message);
}
问题是,客户端发送了类似 "Some text\n continues on newline" 的内容,但我想先在 "Some text" 上回答,然后接受下一行并发送响应。
如果您只想阅读一行,那么在您的 NetworkStream
上使用 StreamReader 并调用它的 ReadLine
方法:
NetworkStream strm = client.GetStream();
StreamReader reader = new StreamReader(strm);
String line = reader.ReadLine();
从 NetworkStream 读取到某个定界符(例如“\n”)的最佳方法是什么
我有以下代码:
NetworkStream clientStream = tcpClient.GetStream();
var message = new byte[4096];
while (true)
{
int bytesRead = 0;
try
{
bytesRead = clientStream.Read(message, 0, 4096);
}
catch
{
// Exception
}
Response(message);
}
问题是,客户端发送了类似 "Some text\n continues on newline" 的内容,但我想先在 "Some text" 上回答,然后接受下一行并发送响应。
如果您只想阅读一行,那么在您的 NetworkStream
上使用 StreamReader 并调用它的 ReadLine
方法:
NetworkStream strm = client.GetStream();
StreamReader reader = new StreamReader(strm);
String line = reader.ReadLine();