Einzelnen Beitrag anzeigen

Benutzerbild von Back2Code
Back2Code

Registriert seit: 6. Feb 2012
Ort: Deutschland
272 Beiträge
 
Delphi XE7 Professional
 
#1

Werte aus einer Ini Datei Lesen funktioniert nicht so ganz

  Alt 1. Mär 2013, 13:14
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');
  Mit Zitat antworten Zitat