[英]C# Reading from Comma Separated Text File to Windows Form
我創建了一個Windows窗體,該窗體接受用戶輸入並將其以逗號分隔的方式寫入文本文件,並追加每行。 我希望能夠從該文件中讀取所有數據,並通過富文本框或標簽在另一個Windows窗體上將其顯示給用戶。
下面的代碼是我必須將數據讀取到計算機上特定位置的內容。 我不確定是否首先需要將數據讀入數組,然后將其發送到標簽或文本框。
using (StreamWriter InputFile = File.AppendText(@"C:\Users\person\Desktop\C#\New Text Document.txt"))
{
InputFile.WriteLine(textBox1.Text + "," + textBox2.Text + "," + textBox3.Text + "," + textBox4.Text);
MessageBox.Show("Data Saved!");
我知道還有很多其他這樣的帖子,但是我似乎無法獲得我要找的答案
是的,您必須讀取數組中的所有行並使用類似以下的代碼
var lines =File.ReadAllLines(@"C:\Users\person\Desktop\C#\New Text Document.txt");
foreach (var line in lines)
{
var col = line.Split(',');
textBox1.Text = col[0];
textBox2.Text = col[1];
textBox3.Text = col[2];
textBox4.Text = col[3];
}
不,您可以使用File.ReadLines
,它返回IEnumerable<string>
。
int i = 1;
foreach (string line in File.ReadLines(path)) {
string[] columns = line.Split(',');
for (int c = 0; c < columns.Length; c++) {
((TextBox)Controls["textBox" + i++]).Text = columns[c];
}
}
我假設您有第一行的文本框名稱為textBox1
到textBox4
,第二行的文本框名稱為textBox5
到textBox8
,依此類推。 但是使用網格可能會更好。
還考慮在名稱空間Microsoft.VisualBasic.FileIO
使用TextFieldParser
。 它為您完成所有CSV處理。 您將必須添加對Microsoft.VisualBasic.dll
的引用。
注意:Microsoft.VisualBasic.dll中的內容只是一個.NET庫,與其他任何庫一樣,並且在C#中的效果與在VB中一樣。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.