StringGrid Delphi
Как сохранить таблицу StringGrid в файл
Сохранить таблицу StringGrid в файл необходимо, чтобы не потерять внесённые в процессе работы данные. Сохранить таблицу StringGrid в файл можно несколькими способами. Например:
Сохранение с помощью объекта StringList
Для сохранения информации в таблице можно воспользоваться объектом StringList, имеющим в своём арсенале метод для сохранения в файл своих строк. Запишем в StringList ячейки построчно, а затем воспользуемся методом SaveToFile:procedure SaveTable(Table: TStringGrid);
var List: TStringList;
i, j: Integer;
begin
List:=TStringList.Create;
with Table do
for i:=0 to RowCount-1 do
for j:=0 to ColCount-1 do
List.Add(Cells[j, i]);
List.SaveToFile('таблица.txt');
end;
Чтобы указать файл для сохранения, вместо
List.SaveToFile('таблица.txt');
используйте такой вариант:
with SaveDialog1 do
if Execute then
List.SaveToFile(FileName);
Обратная операция заполнения таблицы StringGrid сохранёнными данными:
procedure LoadTable(Table: TStringGrid);
var List: TStringList;
i, j: Integer;
begin
List:=TStringList.Create;
List.LoadFromFile('таблица.txt');
with Table do
for i:=0 to RowCount-1 do
for j:=0 to ColCount-1 do
Cells[j, i]:=List[i*ColCount+j];
end;
Возможно, приведённый способ сохранения информации, содержащейся в таблице StringGrid, и не самый оптимальный с точки зрения ресурсов компьютера, ведь при копировании информации в StringList выделяется дополнительная память. Зато он очень прост, ведь нам не приходится самим организовывать файловые операции!
Да и память выделяется на короткое время, так как StringList является локальной переменной и существует лишь во время работы процедуры.
Читайте также: