将.txt文件中的文本写入不同文本文件的Rich Text Box?

时间:2016-05-25 02:32:21

标签: c#

所以我正在创建一个程序,需要将信息从文本框写入txt文件,然后从富文本框中的txt文件中读取信息。这是我到目前为止所拥有的。

private void btn_Write_Click(object sender, EventArgs e)
{
    if (File.Exists(@"C:\Windows\Temp\" + txt_Key.Text + ".txt"))
        MessageBox.Show("File already exists");
        System.Diagnostics.Process.Start(@"C:\Windows\Temp\" + txt_Key.Text + ".txt");
    else
    {
        StreamWriter sw = new StreamWriter(@"C:\Windows\Temp\" + txt_Key.Text + ".txt", true);

        sw.WriteLine("Dog: " + txt_Name.Text);

        txt_Name.Clear();
        sw.WriteLine("Owner: " + txt_Owner.Text);

        txt_Owner.Clear();
        sw.WriteLine("Age: " + nud_Age.Value.ToString());
        nud_Age.Value = 0;

        sw.WriteLine("Breed: " + cmb_Breed.SelectedItem.ToString());

        if (cmb_Breed.SelectedIndex == 0)
        {
            sw.WriteLine("Sub Specie: " + cmb_Shepard.SelectedItem.ToString());
            cmb_Shepard.SelectedIndex = -1;
        }
        else if (cmb_Breed.SelectedIndex == 7 && ckb_Pedigree.Checked == true)
        {
            sw.WriteLine("Pedigree: Yes");
        }
        else if (cmb_Breed.SelectedIndex == 7 && ckb_Pedigree.Checked == false)
        {
            sw.WriteLine("Pedigree: No");
        }
        txt_Key.Clear();
        sw.WriteLine("Comments: " + txt_Com.Text);
        sw.Close();
        txt_Com.Clear();
    }
}

private void btn_Read_Click(object sender, EventArgs e)
{
    StreamReader sr = new StreamReader(@"C:\Windows\Temp\" + txt_Key.Text, true);
    rtb_Info.Text = sr.ReadToEnd();
    sr.Close();
}

正如你在我的写按钮中看到的那样,我有

StreamWriter sw = new StreamWriter(@"C:\Windows\Temp\" + txt_Key.Text + ".txt", true);

哪个工作并使用我生成的密钥创建一个txt文件但是在我的阅读按钮中它表示该文件不存在。任何帮助表示赞赏。

1 个答案:

答案 0 :(得分:1)

我怀疑,这是因为代码在写入文件后正在清除txt_Key文本值。

您应该考虑删除下面的行或有一个类字段并保留它以供下次读取。

 txt_Key.Clear();

我还建议使用调试器进入并查看构建的确切路径。

另一方面,写入OS文件夹是明智的