我正在为简单的c#编写代码,其中我必须从文本文件中读取文本并将其以以下格式显示在文本框中:姓氏,名字:EID“部门”“名称”。文本文件的数据格式为-EID,名字,姓氏,部门,名称。使用streamreader类的readline成员,并将其拆分为一个数组。
if(obj.ShowDialog() == DialogResult.OK)
{
filename = obj.FileName;
textBox1.Text = "";
string[] newline;
StreamReader reader = new StreamReader(filename, true);
while (reader.EndOfStream == false)
{
newline = reader.ReadLine().Split(',');
textBox1.Text = textBox1.Text + newline[1] + ", " + newline[2] + ": " + newline[0] + '"' + newline[3] + '"' +" " + '"' + newline[4] + '"'+"\n";
}
reader.Close();
}
答案 0 :(得分:1)
您要检查换行符数组的长度:
if ( newline.Length >= 5 ) textBox1.Text = textBox1.Text + newline[1] + ", " + newline[2] + ": " + newline[0] + '"' + newline[3] + '"' +" " + '"' + newline[4] + '"'+"\n";
我还建议您继续学习在StreamReader上使用“ using”语句,因为它是可使用的资源。这样可以确保文件被关闭。
答案 1 :(得分:0)
我想为可能有同样疑问的其他人回答我的问题。
if(obj.ShowDialog() == DialogResult.OK){
filename = obj.FileName;
textBox1.Text = "";
StreamReader reader = new StreamReader(filename, true);
while (reader.EndOfStream == false)
{
string newline = reader.ReadLine();
{
string[] values = newline.Split(',');
textBox1.Text = textBox1.Text + values[1] + ", " + values[2] + ": " + values[0] + '"' + values[3] + '"' + " " + '"' + values[4] +'"' + Environment.NewLine;
}
}
reader.Close();
}