Delphi - объектно-ориентированный язык программирования, разработанный компанией Borland в 1995 году. Он основан на языке программирования Pascal, но имеет более расширенные возможности и добавлены новые функции.
Delphi является интегрированной средой разработки (IDE), которая позволяет разрабатывать программное обеспечение для различных платформ, включая Windows, macOS, Android и iOS. Delphi достигает многоплатформенности с помощью...
procedureReadTabFile(FN: TFileName; FieldSeparator: Char; SG: TStringGrid); var
i: Integer; S: string
; T: string
; Colonne, ligne: Integer; Les_Strings: TStringList; CountCols: Integer; CountLines: Integer; TabPos: Integer; StartPos: Integer; InitialCol: Integer; begin
Les_Strings := TStringList.Create; try
// Load the file, Datei laden Les_Strings.LoadFromFile(FN); // Get the number of rows, Anzahl der Zeilen ermitteln CountLines := Les_Strings.Count + SG.FixedRows; // Get the number of columns, Anzahl der Spalten ermitteln T := Les_Strings[0]; for
i := 0 to
Length(T) - 1 do
Inc(CountCols, Ord(IsDelimiter(FieldSeparator, T, i))); Inc(CountCols, 1 + SG.FixedCols);
// Adjust Grid dimensions, Anpassung der Grid-Gro?e ifCountLines > SG.RowCount then
SG.RowCount := CountLines; if
CountCols > SG.ColCount then
SG.ColCount := CountCols;
// Initialisierung InitialCol := SG.FixedCols - 1; Ligne := SG.FixedRows - 1; // Iterate through all rows of the table // Schleife durch allen Zeilen der Tabelle fori := 0 to
Les_Strings.Count - 1 do
begin
Colonne := InitialCol; Inc(Ligne); StartPos := 1; S := Les_Strings[i]; TabPos := Pos(FieldSeparator, S); repeat
Inc(Colonne); SG.Cells[Colonne, Ligne] := Copy(S, StartPos, TabPos - 1); S := Copy(S, TabPos + 1, 999); TabPos := Pos(FieldSeparator, S); until
TabPos = 0; end
; finally
Les_Strings.Free; end
; end
;
// Example, Beispiel: procedureTForm1.Button1Click(Sender: TObject); begin
Screen.Cursor := crHourGlass;
// Open tab-delimited files ReadTabFile('C:TEST.TXT', #9, StringGrid1); Screen.Cursor := crDefault; end;