c#如何逐行读取和写入多行文本框?

时间:2012-10-18 14:43:46

标签: c# string text textbox line

我有一个简单的程序,它有一个功能,当我按下按钮时从多行textBox读取一行 我做的是这个代码:

TextReader read = new System.IO.StringReader(textBox1.Text);
int rows = 100;

string[] text1 = new string[rows];
for (int r = 1; r < rows; r++)
{
    text1[r] = read.ReadLine();
}

所以当点击button1时,代码将是这样的:

textBox2=text1[1];

[1]意味着第一行如何通过一次点击自动完成?   或者单击第一行到textBox2 第二个是textBox3 ..... ect ..

PLZ我想要代码和我应该把它放在哪里^ _ ^

或者如果还有其他方法可以做到这一点

4 个答案:

答案 0 :(得分:20)

属性Lines适合您

if(textBox1.Lines.Length > 0)
    textBox2.Text=textBox1.Lines[0]; 

或者,将您的文本框排序在一个临时数组中并循环它们(当然检查textBox1中的行数)

TextBox[] text = new TextBox[] {textBox2, textBox3, textBox4};
if(textBox.Lines.Length >= 3)
{
    for(int x = 0; x < 3; x++) 
       text[x] = textBox1.Lines[x];
}

答案 1 :(得分:8)

简单编程从C#

中的多行文本框读取和写入一行一行

逐行写行:

textbox1.AppendText("11111111+");
textbox1.AppendText("\r\n222222222");
textbox1.AppendText("\r\n333333333");
textbox1.AppendText("\r\n444444444");
textbox1.AppendText("\r\n555555555");

逐行阅读:

for (int i = 0; i < textbox1.Lines.Length; i++)
{
    textbox2.Text += textbox1.Lines[i] + "\r\n";
}

答案 2 :(得分:1)

您可以使用以下代码段从多行文本框中读取逗号分隔值和换行符分隔值 -

 if (!string.IsNullOrEmpty(Convert.ToString(txtBoxId.Text)))
        {
            string IdOrder = Convert.ToString(txtBoxId.Text.Trim());

            //replacing "enter" i.e. "\n" by ","
            string temp = IdOrder.Replace("\r\n", ",");            

            string[] ArrIdOrders = Regex.Split(temp, ",");

            for (int i = 0; i < ArrIdOrders.Length; i++)
            {
              //your code
            }
         }

我希望这会对你有所帮助。

答案 3 :(得分:0)

您也可以尝试此技巧

foreach (string line in TextBox.Split('\n'))
{

}