Entwickler-Ecke

Dateizugriff - TStrings laden aus ein IniFile???


Jeremy - So 05.10.03 16:26
Titel: TStrings laden aus ein IniFile???
Hi Leut,
Wenn ich ein Inifile hab der so

Quelltext
1:
2:
3:
4:
[races]
                                                                race0=Human
                                                                race1=Elf
                                                                ...

was wäre der richtige code um ALLE werte von [races] aus zu geben als Items in ein ComboBox???

Danke im Vorraus

Jeremy


XPert - So 05.10.03 16:56


Delphi-Quelltext
1:
Memo1.Lines:=ini.ReadSectionValues('races');                    

oder:

Delphi-Quelltext
1:
Memo1.Lines:=ini.ReadSections('races');                    

vielleicht hilft dir das. einfach auf combo umschreiben, statt memo!

Moderiert von user profile iconTino: Delphi-Tags hinzugefügt.


Virus3.1 - So 05.10.03 17:03

Versuchs mal so:

Quelltext
1:
2:
3:
4:
5:
[races]
count=Integer //Anzahl der Einträge in Races
race0=
race1=
race2= ...

Dann müsste der Code wie folgt aussehen:

Delphi-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
Procedure RacesindieComboBoxschreiben;
Var i, n: Integer; ini: TIniFile;
Begin
 ini:=TIniFile.Create(Filename);
 n:=StrToInt(ini.ReadString('Races','Count','0'));
 For i:=0 to n-1 do
 Begin
   ComboBox1.Items.Add(ini.Readstring('Races','Race'+IntToStr(i),' '));
 end;
end;

In der Variablen n liest du mit ini.ReadString den Wert von Count aus (Wenn du den Wert durch ini.WriteInteger gespeichert hast musst du statt ReadString ini.ReadInteger schreiben).In der For-Schleife wird von n eins abgezogen da wir mit Race0 und nicht mit Race1 anfagen. Der Rest dürfte sich von allein erklähren.

by Virus3.1

Moderiert von user profile iconTino: Code- durch Delphi-Tags ersetzt.


Jeremy - So 05.10.03 17:44
Titel: Thanks
Eigentlich hab ich ein weg gesucht den completen sektion auszulesen auf ein schlag. Aber dein vorschlag funktioniert perfekt und warum Kompliziert wenn's auch leicht geht! Danke nochmal!!.

Jeremy


mimi - Mo 06.10.03 19:14

wenn du den gesammten abschnit haben willst müsstes du es erst in einer TStringListe speichern und anschließend davon den count dann nehmen und fertig. ist nur eteteas umständlicher :(


Jeremy - Di 07.10.03 17:27
Titel: TStrings aus Eine IniFile laden
Wie gesagt warum schwer wenns auch leich geht. Hat jedenfalls perfekt funktioniert. Nochmals vielen dank!

Jeremy


[vsc]PrimeTime - Mo 20.10.03 21:07
Titel: Re: TStrings laden aus ein IniFile???
Jeremy hat folgendes geschrieben:

Quelltext
1:
2:
3:
4:
[races]
 race0=Human
 race1=Elf
 ...


hey Jeremy, mal so einen Frage ganz nebenbei :?: :
Kann es sein, dass du irgendetwas für Dungeons&Dragons programmierst?
Wenn ja, lass mir mal ne PM zukommen :lol: , ich bin auch an so einem Projekt.

Greetz
PrimeTime


barfuesser - Di 21.10.03 10:14
Titel: Re: Thanks
Jeremy hat folgendes geschrieben:
Eigentlich hab ich ein weg gesucht den completen sektion auszulesen auf ein schlag. Aber dein vorschlag funktioniert perfekt und warum Kompliziert wenn's auch leicht geht! Danke nochmal!!.

Jeremy


Diesen Weg hat Dir XPert doch gezeigt!

barfuesser