記事カテゴリ

ユーザー機能


 2024年3月28日(木) 23:32 JST

[Delphi] Ini ファイルの読み書き

  • 投稿者:
  • 表示回数
    25,563

Iniファイルの読み書きの方法です。実数値を読み込んだ際に、書き込んだ違う値になっているかもしれません。これは、2進数で表すことができない数値を書き込んだからです。

サンプルプログラムのダウンロードは→[Delphi FAQ用サンプル] Ini ファイルの読み書き

implementation

uses
  IniFiles;

// Iniファイルへの書き込み
procedure TForm1.btnWriteClick(Sender: TObject);
var
  Ini: TIniFile;
begin
  Ini := TIniFile.Create(ChangeFileExt(Application.ExeName, '.ini'));
  try
    Ini.WriteString('セクション', '文字列型', edtStr.Text);
    Ini.WriteInteger('セクション', '整数値型', StrToInt(edtInt.Text));
    Ini.WriteFloat('セクション', '実数値型', StrToFloat(edtFloat.Text));
    Ini.WriteBool('セクション', '論理値型', chkBool.Checked);
  finally
    Ini.Free;
  end;
end;

// Iniファイルからの読み込み
procedure TForm1.btnReadClick(Sender: TObject);
var
  Ini: TIniFile;
  s: String;
  i: integer;
  f: Single;
  b: Boolean;
begin
  Ini := TIniFile.Create(ChangeFileExt(Application.ExeName, '.ini'));
  try
    s := Ini.ReadString('セクション', '文字列型', 'デフォルト値');
    i := Ini.ReadInteger('セクション', '整数値型', 0);
    f := Ini.ReadFloat('セクション', '実数値型', 0.1);
    b := Ini.ReadBool('セクション', '論理値型', False);
  finally
    Ini.Free;
  end;
  edtStr.Text := s;
  edtInt.Text := IntToStr(i);
  edtFloat.Text := FloatToStr(f);
  chkBool.Checked := b;
end;

トラックバック

このエントリのトラックバックURL:
https://www.blackcat.xyz/trackback.php/ProgramingFAQ_del0033

以下のコメントは、その投稿者が所有するものでサイト管理者はコメントに関する責任を負いません。