我尝试使用表单应用程序,但我遇到使用StreamReader功能的问题。在StreamWriter功能中,我做到了但是StreamReader只是读取了最后一行而txt文件包含了许多行,例如:姓名和电话号码,但就像我说代码读取的最后一行
feed_dict
我该怎么办?
答案 0 :(得分:2)
您正在逐行阅读并继续使用下一行覆盖richTextBox1 ...尝试:
richTextBox1.Text = "";
while (yazi != null)
{
richTextBox1.Text += yazi;
yazi = sw.ReadLine();
}
或者,如果您不需要解析每一行,您可以一次性阅读:
if (File.Exists("metinbelgesi.txt"))
{
richTextBox1.Text = File.ReadAllText("metinbelgesi.txt");
}
答案 1 :(得分:2)
根据您的代码,您只是阅读第一行。你的循环中也应该有一个ReadLine()
语句。
请注意,您将始终使用刚刚阅读的文本行覆盖文本框的内容。 因此,当您完成循环后,只会在文本框中显示您已阅读的最后一行。
为简单起见,您还可以查看File
类,更具体地说是ReadAllLines()方法。
答案 2 :(得分:-1)
您应该尝试使用一些更简单的File
操作来让您的生活更轻松。
请改为尝试:
private void button2_Click(object sender, EventArgs e)
{
File.AppendAllText("metinbelgesi.txt", $"{textBox1.Text} {textBox2.Text} {textBox3.Text}.");
}
private void button3_Click(object sender, EventArgs e)
{
if (File.Exists("metinbelgesi.txt"))
{
richTextBox1.Text = File.ReadAllText("metinbelgesi.txt");
}
else
{
MessageBox.Show("First, You Join.");
}
}