Delphi : Fichiers INI : Ecrire plusieurs elements dans meme section ??? [Résolu]

motoetmotards 5 Messages postés mercredi 2 juin 2004Date d'inscription 11 février 2008 Dernière intervention - 23 mars 2006 à 10:54 - Dernière réponse : motoetmotards 5 Messages postés mercredi 2 juin 2004Date d'inscription 11 février 2008 Dernière intervention
- 24 mars 2006 à 08:48
Bonjour.

Je suis en stage et dois développer une appli de réparation de fichiers ini.

Dans mon programme delphi, j'ai une array contenant des strings caractérisants le fichier ini (nom fichier,section,nom elt,valeur).

Je voudrai ecrire dans ce fichier les differentes valeurs dans une meme section, mais a chaque ecriture avec WriteString, cela efface la valeur précédente et remplace avec la nouvelle.

Par exemple : Au départ mon fichier ini est tel que :

*Fichier abc.ini :

[Section 1]
Elt1 = Valeur1
Elt2 = Valeur2

Si j'utilise la méthode :
WriteString('Section 1','Elt3','Valeur3')

Le fichier devient :

*Fichier abc.ini :



[Section 1]

Elt3 = Valeur3

Les données précédentes ont été effacées, est-ce que quelqun a la solution a ce problème

Merci beaucoup par avance !!!

@ bientot sur le forum
Afficher la suite 

Votre réponse

4 réponses

Meilleure réponse
Cirec 4231 Messages postés vendredi 23 juillet 2004Date d'inscription 3 août 2018 Dernière intervention - 23 mars 2006 à 16:57
3
Merci
Salut,
ton problème viens d'ailleurs je pense, l'utilisation de WriteString ne réécris pas les entrées existantes à moins qu'on lui demande mais du moment que "Ident" est unique il l'ajoute au fichier.

Voici un petit exemple qui fonctionne:
procedure TForm1.Button11Click(Sender: TObject);
Var I, Nbr : Integer;
begin
With TIniFile.Create('c:\abc.ini') do
Begin
Nbr := ReadInteger('Nombres d''entrées', 'Nbr', 1);
For I : = Nbr to Nbr + 4 do
WriteString('Section 1', 'Idx'+ IntToStR(I), 'Valeur Teste');
WriteInteger('Nombres d''entrées', 'Nbr', I);
Free;
End;
end;

@+
Cirec

Merci Cirec 3

Avec quelques mots c'est encore mieux Ajouter un commentaire

Codes Sources a aidé 93 internautes ce mois-ci

Commenter la réponse de Cirec
cs_cantador 4996 Messages postés dimanche 26 février 2006Date d'inscription 27 mars 2018 Dernière intervention - 23 mars 2006 à 14:19
Commenter la réponse de cs_cantador
cs_Kenavo 759 Messages postés vendredi 21 mars 2003Date d'inscription 1 octobre 2009 Dernière intervention - 24 mars 2006 à 08:14
0
Merci
Salut,

Je confirme ce que dit Cirec, et, à mon avis, tu ne modifie pas ton fichier ini mais tu en crées un nouveau ! Vérifie le nom complet (répertoire inclus) du fichier ini d'origine et celui que tu crées pour écrire (
TIniFile.Create(NomDuFichierIni) ).

Ken@vo

<hr size="2" width="100%">Code, Code, Codec !

[%3C/body ]
Commenter la réponse de cs_Kenavo
motoetmotards 5 Messages postés mercredi 2 juin 2004Date d'inscription 11 février 2008 Dernière intervention - 24 mars 2006 à 08:48
0
Merci
Merci pour votre réponse, j'vais re-tester, j'vous tiens au courant.
Merci de vortre rapidité !
@+
Commenter la réponse de motoetmotards

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.