将列表框中列出的文本文件内容显示到文本框?

时间:2014-03-28 04:42:25

标签: c# asp.net listbox

我对C#(ASP.Net)的了解有限,我正在努力解决这个问题......

我所做的是创建listbox并使用此代码从路径D:\ test填充.txtxml文件

     string path = "D:\\test";
    files = new DirectoryInfo(path).GetFiles("*.txt", SearchOption.TopDirectoryOnly); //no need to define any parameters
    for (int i = 0; i < files.Length; i++)
        ListBox1.Items.Add(Path.GetFileName(files[i].FullName));

一旦listbox显示目录中的所有.txt文件,我想选择一个文本文件,所选文件将在文本框中显示记事本文件的内部内容或文本。我在selectedindexchanged listbox事件中编写此代码,但当我点击.txt内的listbox文件时,它在文本框中没有显示任何内容。 Plz帮助我。谢谢。

    string fullNameOfFile = files[ListBox1.SelectedIndex].FullName;
    StringBuilder sb = new StringBuilder();
    using (StreamReader sr = new StreamReader(fullNameOfFile))
    {
        string line;
        while ((line = sr.ReadLine()) != null)
        {
            sb.AppendLine(line);
        }
    }
    TextBox1.Text = "Content of file " + fullNameOfFile + " is:\r\n\"" + sb.ToString();

1 个答案:

答案 0 :(得分:0)

使用File.ReadAllLines方法。只用一行替换所有代码。

TextBox1.Text = "Content of file " + fullNameOfFile + " is:\r\n\"" + File.ReadAllLines(fullNameOfFile);