Création et lecture de fichier ini
Bonjour à vous,
Je sèche un peu sur mon fichier ini malgré la faq :oops:
Voici ce que je fais pour la création de mon fichier ini :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13
| void __fastcall TForm1::ButtonSaveParaClick(TObject *Sender)
{
TIniFile *f;
try
{
f = new TIniFile("C:\\Documents and Settings\\MOI\\Bureau\\Test\\test.ini");
f->WriteString("Chemin destination", "Repertoire destination", DirectoryListBox2->Directory);
f->WriteString("Chemin source", "Repertoire source", DriveComboBox1->Drive);
}
__finally
{
delete f;
} |
Là tout fonctionne très bien, même s'il faudrait que je trouve à mettre le moyen que le fichier .ini se créer automataiquement dans le dossier de l'application et plus de manière statique comme je fais, je pense qu'il faut passer par GetCurrentDir mais je n'arrive pas à le mettre en place.
Enfin mon plus gros souci, c'est à la lecture du fichier ini, car biensur au lancement de l'application, j'aimerais bien le lire et faire l'opération inverse de la crétion du fichier.
Je fais donc ceci pour la lecture, toujours grâce à la FAQ :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
| TIniFile *f;
AnsiString s,t;
try
{
f = new TIniFile("C:\\Documents and Settings\\MOI\\Bureau\\Test\\test.ini");
s = f->ReadString("Chemin destination", "Repertoire destination", "");
t = f->ReadString("Chemin source", "Repertoire source", "");
}
__finally
{
delete f;
}
DirectoryListBox2->Directory = s;
DriveComboBox1->Drive = t; |
Sauf que là j'ai droit à une belle erreur de compilateur :
Citation:
[C++ Erreur] Unit1.cpp(34): E2034 Impossible de convertir 'AnsiString' en 'char'
pour ma dernière ligne, ce qui est en fait normal car en effet j'ai qu'un caractère de stocker dans l'ini donc je ne vois pas cmment contourner cela.
Et je dois dire que cela fait bientôt 2 ans que je n'avais pas codé et je dois dire que l'on perd beaucoup à ne pas pratiquer :(
Merci par avance de votre aide ;)