Я делаю программу в WindowsForm на C++. Она должна сохранить данные из DataGridView в текстовый файл, но выдаёт ошибку
Вот код
private: System::Void button1_Click(System::Object^ sender, System::EventArgs^ e) {
SaveFileDialog^ SaveFileDialog1 = gcnew SaveFileDialog;
SaveFileDialog1->Filter = "txt files (*.txt)|*.txt|All files (*.*)|*.*";
if (SaveFileDialog1->ShowDialog() == System::Windows::Forms::DialogResult::OK)
{
StreamWriter^ file = File::CreateText(SaveFileDialog1->FileName);
int M, N;
dataGridView1->RowCount = M;
dataGridView1->ColumnCount = N;
char mas[100][100];
int i,j;
for (i = 0; i < M - 1; i++)
for (j = 0; j < N - 1; j++)
{
(dataGridView1->Rows[i]->Cells[j]->Value = mas[i][j]);
file->WriteLine(mas[i][j]);
};
// тут запись данных через file->Write или file->WriteLine
file->Close();
}
Ответы (1 шт):
Автор решения: Vasia Black
→ Ссылка
вот рабочий код:
SaveFileDialog^ SaveFileDialog1 = gcnew SaveFileDialog;
SaveFileDialog1->Filter = "txt files (*.txt)|*.txt|All files (*.*)|*.*";
if (SaveFileDialog1->ShowDialog() == System::Windows::Forms::DialogResult::OK)
{
StreamWriter^ file = File::CreateText(SaveFileDialog1->FileName);
int с=dataGridView1->RowCount, r=dataGridView1->ColumnCount;
int i, j;
for (i = 0; i < с - 1; i++) {
for (j = 0; j < r - 1; j++)
{
file->Write(dataGridView1->Rows[i]->Cells[j]->Value);
file->Write(" ");
};
file->WriteLine("");
}
file->Close();
}
