2012-10-18 31 views
0

现在,我的代码将整个文本文件放到一个文本框中。我试图弄清楚如何做的是将文件的每一行放在每个单独的文本框中。将文本文件分解为部分/行,并将这些部分放入文本框中

namespace HomeInventory2 
{ 
    public partial class Form1 : Form 
    { 
     public Form1(string prepopulated) 
     { 
      InitializeComponent(); 
      textBoxAmount.Text = prepopulated; 
     } 

     private void label1_Click(object sender, EventArgs e) 
     { 

     } 

     private void submitButton_Click(object sender, EventArgs e) 
     { 
      CreateInventory create = new CreateInventory(); 
      create.ItemAmount = textBoxAmount.Text; 
      create.ItemCategory = textBoxCategories.Text; 
      create.ItemProperties = textBoxValue.Text; 
      create.ItemValue = textBoxValue.Text; 

      InventoryMngr invtryMngr = new InventoryMngr(); 
      invtryMngr.Create(create); 

     } 
    } 

回答

2

假定行的顺序始终是相同的,并且每个TextBox属于一个行:

IEnumerable<String> lines = File.ReadLines(path); 
textBoxAmount.Text = lines.ElementAtOrDefault(0); 
textBoxCategories.Text = lines.ElementAtOrDefault(1); 
textBoxValue.Text = lines.ElementAtOrDefault(2); 
... 

Enumerable.ElementAtOrDefault<TSource> Method

返回元素在一个指定的索引在如果索引超出范围(在本例中为null),则返回值或默认值 值。

1

您可以使用System.IO.File.ReadAllLines(字符串文件名)。 这样做是将文件的每一行读入一个字符串数组。 然后你可以这样做:

using System.IO; 


//Namespace, Class Blah Blah BLah 


String[] FileLines = File.ReadAllLines("Kablooey"); 


textBox1.Text = FileLines[0]; 

textbox2.Text = FileLines[1]; 

等等。我希望这有助于:)

相关问题