Forums | Contact | Plan du site Menu Accueil » Programmation
X

Utilisation des fichiers .ini avec Delphi

  Un fichier INI est un fichier de configuration, permettant de stocker des informations sur l'application en les classant par groupes logiques appelés "sections". Dans chaque section, vous pouvez ajouter, modifier et supprimer des données automatiquement stockées sous la forme (clé = valeur). Concrètement, il s'agit de pouvoir sauvegarder des actions de l'utilisateur d'un logiciel afin de les retenir pour une utilisation ultérieure. On peut par exemple sauvegarder des données

  • Si l'utilisateur redimentionne une fenêtre ou clique sur un élément,
  • ou s'il entre une valeur dans un champ
  • ou encore s'il choisit une opition dans une liste ...


Présentation d'un fichier ini

 
; Ceci est un fichier de configuration
; Les commentaires de ce type de fichier commencent par ';'

[parametres]
url = http://www.conseil-creation.com
nom = conseil & création

[apparence]
couleur = vert


Les fichiers ini avec Delphi

 

Tout d'abord, ajouter la classe Inifiles

uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, Inifiles;

On peut ensuite écrire, modifier, supprimer... des valeurs dans le fichier.
Ne pas oublier de créer une variable (peu importe le nom, ici ini) de classe TInifile avant begin

procedure TForm1.Button1Click(Sender:TObject);

var ini:TInifile; // variable nécessaire
    nb:Integer; txt:String; // variables pour exemples

begin
  ini := Tinifile.Create('configuration.ini');
  // Il est préférable d'indiquer le chemin complet d'un répertoire
  // Pour obrenir le même chemin que l'exécutable, indiquez simplement :
  // extractFilePath(application.exename)+'configuration.ini'

  // ici, vous pouvez lire, créer, supprimer des valeurs :

  // Pour écrire des valeurs : Write...('section','clé','valeur')
  ini.WriteString('parametres','nom',Edit1.text); // écrit une chaîne
  ini.WriteInteger('parametres','largeur',Screen.Width); // écrit un nombre

  // Pour lire des valeurs : Read...('section','clé','valeur par défaut')
  txt := ini.ReadString('parametres','nom', ''); // lit une chaîne
  nb := ini.ReadInteger('parametres',largeur,'800'); // lit un nombre

{ De la même façon, il est possible de gérer d'autres types de valeurs :
booléens (writebool, readbool) ; dates (writedate, readdate) ... }

  ini.free; // on libère

end;

Des questions ? Rejoignez nous sur le forum...


Une question ? Venez échanger sur le forum...
Nom :
Sujet :
 

© Cédric MICHEL - conseil & création ( 2003 / 2017 )