C++ Builder
| Главная | Уроки | Статьи | FAQ | Форум | Downloads | Литература | Ссылки | RXLib | Диски |

 
Чтение из файла в StringGrid
Евгений
Отправлено: 28.04.2006, 21:11


Не зарегистрирован







Здравствуйте.
У меня возникла вот такая задача:
есть текстовый файл со следующим содержимым:
1 2 3 4 5
6 7 8 9 10
11 12 13 14
15 16 17 18

т.е. по строкам числа — разделённые пробелом, затем сивол 0x0A и следующая строка. проще говоря матрица размером NхM, N = 1...i, M = 1...j.

Задача состоит в том, чтобы прочитать эти числа в сетку StringGrid соответствующего размера.
Если кто-то сталкивался с подобной задачей и её реализовывал, большая просьба скинуть код.
Aptem
Отправлено: 30.04.2006, 15:47


Мастер участка

Группа: Участник
Сообщений: 349



Вот вам примерчик, тока там пример с записью в файл, соответственно для чтения из файла нужно заменить один оператор:
CODE
void __fastcall TForm1::Button5Click(TObject *Sender)
{
 FILE *file = fopen ( "D:\\Interpolated_MCSST_gradient.pal", "wb" );

 AnsiString str = "255";
 char *tmp = new char[2];

 for ( int i = 0; i < StringGrid2 -> RowCount; i++ )
 {
   for ( int j = 0; j < StringGrid2 -> ColCount; j++ )
   {
     if ( StringGrid2 -> Cells[j][i] != "" )
     {
       tmp = IntToChar ( StringGrid2 -> Cells[j][i].ToInt(), 3 );
       fwrite ( tmp, 1, 1, file );
     }
   }
 }

 fclose ( file );
}
Евгений
Отправлено: 01.05.2006, 16:40


Не зарегистрирован







Aptem, спасибо за пример.
Буду пытаться прикрутить для чтения из файла. Если не получится, обращусь снова за помощью.
Спасибо.
esclkm
Отправлено: 06.05.2006, 11:54


Ученик-кочегар

Группа: Участник
Сообщений: 11



А я бы через TStringList делал бы,- загрузил бы в него файл, а потом на substring бы разбивал. мне так проще...

Отредактировано esclkm — 06/05/2006, 11:56

Вернуться в Вопросы программирования в C++Builder