【问题标题】:How can I display array of items in textbox separated with comma?如何在用逗号分隔的文本框中显示项目数组?
【发布时间】:2014-04-06 00:19:25
【问题描述】:

有没有办法在用逗号分隔的文本框中显示字符串数组项。我无法做到正确,经历了很多试验和错误。

非常感谢任何帮助或建议。

private void button9_Click(object sender, EventArgs e)
    {
        int lineNum = 1;
        OpenFileDialog openFileDialog1 = new OpenFileDialog();
        openFileDialog1.Filter = "Text Files|*.txt";
        openFileDialog1.Title = "Select a Text file";
        openFileDialog1.FileName = "";
        DialogResult result = openFileDialog1.ShowDialog();
        if (result == DialogResult.OK)
        {
            string file = openFileDialog1.FileName;

            string[] text = System.IO.File.ReadAllLines(file);



            foreach (string line in text)
            {
                if (lineNum <= 30)
                {

                    textBox1.Text = Convert.ToString( text);

                }
                else
                {
                   textBox2.Text = Convert.ToString(text);
                 }
            }
        }
   }

有什么建议

【问题讨论】:

    标签: c# .net arrays textbox


    【解决方案1】:

    当然,只需使用String.Join

    textBox1.Text = string.Join(",", text);
    

    如果您想在每个逗号后附加NewLine

    textBox1.Text = string.Join("," + Environment.NewLine, text);
    

    您也不需要使用 foreach 循环。

    编辑:根据您的评论,您可以使用以下内容:

    textBox1.Text = string.Join("," + Environment.NewLine, text.Take(30));
    
    if(text.Length > 30)
         textBox2.Text = string.Join("," + Environment.NewLine, text.Skip(30));
    

    注意:要使用LINQ 方法(例如TakeSkip),您需要在项目中包含System.Linq 命名空间。

    using System.Linq;
    

    【讨论】:

    • 非常感谢@Selman22 它可以工作并在用逗号分隔的文本框中显示数组中的所有项目,但正如您在我的代码中看到的那样,我想在 textbox2 中显示数组 textbox1 的第 30 个项目.但代码正在跳过条件检查。
    • @user2889827 我编辑了我的答案。它应该做你想做的:)
    【解决方案2】:

    @user2889827 使用你的代码,你会犯这个错误:每个新的循环周期你都会用一个新的字符串替换保持 Textbox1.Text
    为了纠正这个问题,您必须将保留文本与新文本连接起来:

    ...
    textbox1.text+=text;
    ...
    textbox2.text+=text;
    

    还将string 转换为string 也没用。
    或者,如果您愿意,可以使用 @Selman22 解决方案,在您的情况下,它是解决问题的最佳解决方案

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-03-09
      • 2012-01-14
      • 1970-01-01
      相关资源
      最近更新 更多