谁能知道/给我一个例子,说明如何将ini文件中的一部分读取到stringGrid中?当我在努力寻找方法时。

谢谢

科林

最佳答案

OTOMH:

procedure ReadIntoGrid(const aIniFileName, aSection: string; const aGrid: TStringGrid);
var
  Ini: TIniFile;
  SL: TStringList;
  i: Integer;
begin
  SL := TStringList.Create;
  try
    Ini := TIniFile.Create(aIniFileName);
    try
      aGrid.ColCount := 2;
      Ini.ReadSectionValues(aSection, SL);
      aGrid.RowCount := SL.Count;
      for i := 0 to SL.Count - 1 do
      begin
        aGrid.Cells[0,i] := SL.Names[i];
        aGrid.Cells[1,i] := SL.ValueFromIndex[i];
      end;
    finally
      Ini.Free;
    end;
  finally
    SL.Free;
  end;
end;


编辑

相反:

procedure SaveFromGrid(const aIniFileName, aSection: string; const aGrid: TStringGrid);
var
  Ini: TIniFile;
  i: Integer;
begin
  Ini := TIniFile.Create(aIniFileName);
  try
    for i := 0 to aGrid.RowCount - 1 do
      Ini.WriteString(aSection, aGrid.Cells[0,i], aGrid.Cells[1,i]);
  finally
    Ini.Free;
  end;
end;

10-08 05:06