Einzelnen Beitrag anzeigen

tr909

Registriert seit: 5. Nov 2004
193 Beiträge
 
Turbo Delphi für Win32
 
#1

Zugriffsverletzung beim Freigeben einer TStringList

  Alt 20. Jul 2007, 09:55
Moin. Ich schreibe mir gerade eine Klasse zum einlesen und verarbeiten von csv-Files. Nun kommt es bei einer Testdatei (bei einer anderen tritt der Fehler nicht auf) zu einer Zugriffsverletzung bei "s.Free"
content ist deklariert als ARRAY of TStrings;

Delphi-Quellcode:
procedure TCsvDB.LoadFromFile(const fname: string);
var
  s : TStrings;
  i: Integer;
begin
try
  s := TStringList.Create;
  s.LoadFromFile(fname);
  Header.Delimiter := ';';
  Header.StrictDelimiter := true;
  Header.DelimitedText := s[0];
  headerCount := header.Count;
  lineCount := s.Count - 1;
  ShowMessage (IntToStr(linecount));
  setlength(Content,lineCount);
  showmessage ('setlength');
  for i := 1 to lineCount do
  begin
    Content[i] := TStringList.Create;
    Content[i].Delimiter := ';';
    Header.StrictDelimiter := true;
    Content[i].DelimitedText := s[i];
  end;
finally
  s.Free;
end;
end;
Wäre nett wenn mir jemand helfen könnte.

Gruß
tr909
  Mit Zitat antworten Zitat