Also ich bin gerade dabei die Sektionen, Abschnitte & Werte jeweils in eine Stringlist zu packen. Es funktioniert eigentlich alles richtig, außer das Auslesen der Werte. Da bekomm ich ledliglich die Werte immer von dem letzten Abschnitt.
Wie bekomm ich es jetzt hinn, dass ALLE Werte von allen Abschnitten in meiner Stringlist vorhanden sind.
Hier ein Auszug von meinem Code:
Delphi-Quellcode:
procedure TFrmHpt.OpenIniAndFillOutDB(inilist: TStringList);
var i, ii, jj, j, x, Value, AbschnittsZähler: Integer;
Modul, Abschnitt, fullFileName: String;
ini: TIniFile;
Sektionen, Werte, Schlüssel, Abschnitte : TStringList;
begin
//ShowMessage((inilist.Strings[2]));
for i := 0 to inilist.Count-1 do
begin
ini := TIniFile.Create(inilist.Strings[i]);
Sektionen := TStringList.Create;
Abschnitte := TStringList.Create;
Schlüssel := TStringlist.Create;
Werte := TStringList.Create;
fullFileName := inilist.Strings[i];
Modul := ExtractFileName(fullFileName); // Dateiname aktueller Ini i z.b hphabirgendwas.ini;
AbschnittsZähler := INISectionsCount(fullFileName); // Abschnittszäher = Wie viele Abschnitte gibt es in der aktuellen Ini
Ini.ReadSections(Sektionen); // Jetzt sind alle Sektionen in der StringList Sektionen
//Alle Abschnitte in die Stringlist Abschnitte packen
for j := 0 to Sektionen.Count-1 do // Schleife und durch jede Sektion durchgehen
begin
ini.ReadSection(Sektionen.Strings[j], Abschnitte);
end;
// Alle Werte mit Abschnitten davor in die Stringlist Werte packen
for jj := 0 to Abschnitte.Count-1 do
begin
ini.ReadSectionValues(Sektionen.Strings[jj], Werte); //<-- Da muss irgendwo der Fehler liegen
end;
Sektionen.SaveToFile ('C:\Users\adminn\Desktop\aTest\Sektionen.txt');
Abschnitte.SaveToFile ('C:\Users\admin\Desktop\aTest\Abschnitte.txt');
Werte.SaveToFile ('C:\Users\admin\Desktop\aTest\Werte.txt');