【发布时间】:2021-01-07 09:09:17
【问题描述】:
FileStream fs = new FileStream(@"file.txt", FileMode.Create);
StreamWriter streamwriter = new StreamWriter(fs);
try
{
for (int j = 0; j < dataGridView1.Rows.Count -1 ; j++)
{
for (i = 0; i < dataGridView1.Rows[j].Cells.Count; i++)
{
streamwriter.Write(dataGridView1.Rows[j].Cells[i].Value + "#");
}
streamwriter.WriteLine("\n");
}
streamwriter.Close();
fs.Close();
MessageBox.Show("File saved successfully!");
}
catch
{
MessageBox.Show("File save failed!");
}
此函数应该将值从DataGridView传输到文件,但最后一个值不会不断写入。我意识到它会删除我输入的最后一个元素
应该是这样的:
Name1#Lastname1#Number1#Home1#
这是真实的结果:
Name2#Lastname2#Number2##
【问题讨论】:
-
测试了你的代码,一切正常。您是否错过了重现问题的一些步骤?你在哪里执行代码?通过按钮单击?还是任何 datagridview 事件?
-
MenuStrip 。我意识到它删除了我输入的最后一个元素
-
将您的第一个循环条件从
dataGridView1.Rows.Count - 1更改为dataGridView1.Rows.Count -
它的作用相同,但添加了另一个空行。
标签: c# winforms datagridview text-files txt