Сохранение и чтение TStringGrid
Материал из DRKB
Сохранение и чтение TStringGrid[править | править код]
procedure SaveGrid;
var
f: textfile;
x, y: integer;
begin
AssignFile(f, 'Filename');
Rewrite(f);
WriteLn(f, StringGrid.ColCount);
WriteLn(f, StringGrid.RowCount);
for X := 0 to StringGrid.ColCount - 1 do
for y := 0 to StringGrid.RowCount - 1 do
WriteLn(F, StringGrid.Cells[x, y]);
CloseFile(f);
end;
procedure LoadGrid;
var
f: textfile;
temp, x, y: integer;
tempstr: string;
begin
AssignFile(f, 'Filename');
Reset(f);
ReadLn(f, temp);
StringGrid.ColCount := temp;
ReadLn(f, temp);
StringGrid.RowCount := temp;
for X := 0 to StringGrid.ColCount - 1 do
for y := 0 to StringGrid.RowCount - 1 do
begin
ReadLn(F, tempstr);
StringGrid.Cells[x, y] := tempstr;
end;
CloseFile(f);
end;
Source: http://delphiworld.narod.ru/
ID: 01058
// Save a TStringGrid to a file
procedure SaveStringGrid(StringGrid: TStringGrid; const FileName: TFileName);
var
f: TextFile;
i, k: Integer;
begin
AssignFile(f, FileName);
Rewrite(f);
with StringGrid do
begin
// Write number of Columns/Rows
Writeln(f, ColCount);
Writeln(f, RowCount);
// loop through cells
for i := 0 to ColCount - 1 do
for k := 0 to RowCount - 1 do
Writeln(F, Cells[i, k]);
end;
CloseFile(F);
end;
// Load a TStringGrid from a file
procedure LoadStringGrid(StringGrid: TStringGrid; const FileName: TFileName);
var
f: TextFile;
iTmp, i, k: Integer;
strTemp: String;
begin
AssignFile(f, FileName);
Reset(f);
with StringGrid do
begin
// Get number of columns
Readln(f, iTmp);
ColCount := iTmp;
// Get number of rows
Readln(f, iTmp);
RowCount := iTmp;
// loop through cells & fill in values
for i := 0 to ColCount - 1 do
for k := 0 to RowCount - 1 do
begin
Readln(f, strTemp);
Cells[i, k] := strTemp;
end;
end;
CloseFile(f);
end;
// Save StringGrid1 to 'c:\temp.txt':
procedure TForm1.Button1Click(Sender: TObject);
begin
SaveStringGrid(StringGrid1, 'c:\temp.txt');
end;
// Load StringGrid1 from 'c:\temp.txt':
procedure TForm1.Button2Click(Sender: TObject);
begin
LoadStringGrid(StringGrid1, 'c:\temp.txt');
end;
Source: Взято с сайта: http://www.swissdelphicenter.ch
ID: 01059