-1

如何显示已添加到列表中的内容并在文本框中逐行显示?我正在将文本文件中的数据添加到列表中,以便我可以在每一行之后附加文本。

    private void button1_Click(object sender, EventArgs e)
    {

        try
        {
            var list = new List<string>();

            using (var sr = new StreamReader("C:\\File1.txt"))
            {
                string line;

                while ((line = sr.ReadLine()) != null)
                {
                    list.Add(line);
                }

            }

            TextBox.Text = string.Join(Environment.NewLine, list.ToArray());

        }
        catch (Exception ex)
        {
            MessageBox.Show("An error has occurred" + ex.Message);
        }


    } 
4

3 回答 3

6

就像是:

aTextbox.Text = string.Join(Environment.NewLine, list.ToArray());

这将获取数组中的每个字符串并在它们之间添加一个换行符。

于 2013-09-05T14:46:33.477 回答
0

如果您只需要在 a 中显示文件源TextBox,则无需List<string>先将数据保存在 a 中。做就是了:

string text = "";
using (var sr = new StreamReader("C:\\File1.txt"))
{
     string line;
     while ((line = sr.ReadLine()) != null)
     {
          text += line + Environment.NewLine;
     }
}
aTextbox.Text = text;
于 2013-09-05T14:49:39.473 回答
0

另一种方式 - 无需遍历文件中的所有行。

using System.IO;

private void WriteFileContentsToTextBox(string filePath)
{
     // Always check for existence of the file
     if (File.Exists(filePath))
     {
        // Open the file to read from. 
        string[] readText = File.ReadAllLines(filePath, Encoding.UTF8);
        myMultilineTextBox.Text = string.Join(Environment.Newline, readText);
     }
 }     
于 2013-09-05T14:55:08.077 回答