Speicher/Ladeproblem von TStringlist

Für Fragen von Einsteigern und Programmieranfängern...
Antworten
Erik.schuessler
Beiträge: 1
Registriert: Mi 7. Aug 2013, 18:10

Speicher/Ladeproblem von TStringlist

Beitrag von Erik.schuessler »

Hallo,
ich habe ein dringendes Problem,
ich versuche einen dyn. array aus einer stringlist zu beschreiben und danach teile in eine combobox zu übergeben.
beim Laden kommt der Fehler external SIGSEV
ich habe schon alles Verucht, bitte um schnelle hilfe.
Hier mein Code:

Code: Alles auswählen

[b]type[/b]
  TPersonendaten = record
      name:String[20];
      Geschlecht:boolean;
      kgroesse:integer;
      kgewicht:integer;
      kalter:integer;
      ktrinkverhalten:integer;
      end;
 
[b]var[/b]
liste:tstringlist;
aktpersonendaten: Array of Tpersonendaten;
 
procedure TF_berechnen.FormCreate(Sender: TObject);
begin
 //laden der Stringliste
 try
    liste.loadfromfile(extractfilepath(paramstr(0))+'liste.txt')
  finally
    liste.LoadFromFile(extractfilepath(paramstr(0))+'liste.txt');
    zahler:=liste.count;
    if zahler>0 then begin
  i:=0;
  b:=0;
  while b>(zahler-1) do begin
     setlength(aktpersonendaten,i+1);
         aktpersonendaten[i].Name:=liste[b];
         if (strtoint(liste[b+1])=1) then begin
         aktpersonendaten[i].geschlecht:=true;
 
         end
         else          begin
         aktpersonendaten[i].geschlecht:=false;
         end;
         aktpersonendaten[i].kgroesse:=strtoint(liste[b+2]) ;
         aktpersonendaten[i].kgewicht:=strtoint(liste[b+3])  ;
         aktpersonendaten[i].kalter:=strtoint(liste[b+4])     ;
         aktpersonendaten[i].ktrinkverhalten:=strtoint(liste[b+5]);
 
      i:=i+1;
      b:=b+6;
  end;
  end;
 
  end;
 
 //beschreiben der combobox zum laden
 arraylang:=length(aktpersonendaten);
 For i:=1 to arraylang do begin
    cbb_datenlesen.items.add(aktpersonendaten[i-1].name);
 end;
 
end;
Zuletzt geändert von Lori am Fr 9. Aug 2013, 21:11, insgesamt 1-mal geändert.
Grund: Highlighter

Eradikator
Beiträge: 33
Registriert: Sa 8. Jun 2013, 19:45

Re: Speicher/Ladeproblem von TStringlist

Beitrag von Eradikator »

Hallo, einfügen von liste:=tstringlist.create nach begin und von list.free am Schluss der Procedur vor dem end.
Dann müsste es funktionieren.
gruß

Antworten