25. april 2006 - 19:42Der er
2 kommentarer og 1 løsning
Gemme/hente data til StringGrid fra en textfil
Hej.
Jeg har et problem, som jeg gerne vil give 50 points for.
Det er formentligt et problem, man ofte er stødt på og derfor nemt for gruppen at svare på.
Jeg ønsker at gemme hhv. hente data til en form for kontoplan i en tekst-fil (jeg går med andre ord ud fra, at det er en fornuftig løsning med en tekstfil hertil)
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 := 1 to ColCount - 1 do for k := 1 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 := 1 to ColCount - 1 do for k := 1 to RowCount - 1 do begin Readln(f, strTemp); Cells[i, k] := strTemp; end; end; CloseFile(f); end;
procedure TForm1.Button1Click(Sender: TObject); begin LoadStringGrid(StringGrid1, 'c:\temp\konto.txt'); //hent
end;
procedure TForm1.Button2Click(Sender: TObject); begin SaveStringGrid(StringGrid1, 'c:\temp\konto.txt'); //gem
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.