Как записать несколько текстовых файлов с ограничением количества строк - C#
Формулировка задачи:
Добрый день, необходимо записать данные в текстовый файл, но в файле не должно быть более 255 записей, если записей больше, то нужно продолжать запись в другой файл, как организовать это, пока записываю данные в один файл таким образом:
Спасибо.
private void _WriteDatafrom_DataGridViewToFile(string Config_Unit_File_FullPath)
{ //Сохранение в текстовый файл значение ячеек DataGridView
//Записать DatadGridView в файл
int rowN = dataGridView1.RowCount; //Получаем количество строк.
dataGridView1.FirstDisplayedScrollingRowIndex = --rowN; //Переходим на последнюю строку
dataGridView1.AllowUserToAddRows = false; //Отключаем последнюю строку в DataGridView1
FileStream wStream = new FileStream(Config_Unit_File_FullPath.ToString(), FileMode.Create, FileAccess.Write);
StreamWriter file = new StreamWriter(wStream);
try
{
for (int i = 0; i < dataGridView1.RowCount; i++)
{//Построчно записываем данные из dataGridView1
if (dataGridView1["CheckIzm", i].Value.ToString() != "1") //Если значение ячейки не равно 1 то записываем.
{
file.WriteLine(dataGridView1.Rows[i].Cells["test"].Value.ToString());
}
}
}
catch (Exception e1)
{
MessageBox.Show(e1.Message);
}
finally
{
file.Close();
}
dataGridView1.AllowUserToAddRows = true;
}Решение задачи: «Как записать несколько текстовых файлов с ограничением количества строк»
textual
Листинг программы
private void _WriteDatafrom_DataGridViewToFile(string Config_Unit_File_FullPath)
{ //Сохранение в текстовый файл значение ячеек DataGridView
//Записать DatadGridView в файл
int rowN = dataGridView1.RowCount; //Получаем количество строк.
dataGridView1.FirstDisplayedScrollingRowIndex = --rowN; //Переходим на последнюю строку
dataGridView1.AllowUserToAddRows = false; //Отключаем последнюю строку в DataGridView1
FileStream wStream = new FileStream(Config_Unit_File_FullPath.ToString(), FileMode.Create, FileAccess.Write);
StreamWriter file = new StreamWriter(wStream);
int n = 255;
try
{
for (int i = 0; i < dataGridView1.RowCount; i++)
{
if (n % 255 == 0 )
{
wStream = new FileStream(Config_Unit_File_FullPath.ToString().Replace(".расширение>",
(n / 255).ToString() + ".расширение"), FileMode.Create, FileAccess.Write);
file = new StreamWriter(wStream);
}
n++;
//Построчно записываем данные из dataGridView1
if (dataGridView1["CheckIzm", i].Value.ToString() != "1") //Если значение ячейки не равно 1 то записываем.
{
file.WriteLine(dataGridView1.Rows[i].Cells["test"].Value.ToString());
}
}
}
catch (Exception e1)
{
MessageBox.Show(e1.Message);
}
finally
{
file.Close();
}
dataGridView1.AllowUserToAddRows = true;
}