如何使用流读取器通过TCP检索大字符串
本文关键字:TCP 检索 字符串 何使用 读取 | 更新日期: 2023-09-27 17:56:57
我正在尝试通过TCP接收大字符串,我尝试了各种方法,但没有一种方法像这种方法那样好(实际上非常简单)。
public partial class MyClass : Form
{
Int64 counter;
StreamWriter writer;
StreamReader reader;
public MyClass(object streamIn, object StreamOut)
{
InitializeComponent();
richTextBox1.BackColor = Color.Black;
richTextBox1.ForeColor = Color.Gray;
writer = (StreamWriter)streamIn;
reader = (StreamReader)StreamOut;
}
private void button1_Click(object sender, EventArgs e)
{
JObject o = new JObject();
char[] buffer = new char[1024];
int count = buffer.Length;
o.Add("comando", 15);
o.Add("filename", textBox2.Text);
o.Add("param", textBox3.Text);
writer.Write(o.ToString());
writer.Flush();
richTextBox1.Text = reader.ReadToEnd();
}
}
使用它的问题是我必须关闭另一端的流,以便读取。有什么方法可以使用reader.ReadToEnd()
,而不必在发送后关闭另一端的流,从而关闭客户端-服务器之间的连接?
查看入门文章中介绍的网络库 networkcomms.net 的基本示例。虽然这是一个控制台示例,但它允许您发送任意长度的字符串。
您的示例看起来像是一个 winform 应用程序。如果有兴趣,还有一个 WPF 聊天应用程序示例。