Einzelnen Beitrag anzeigen

Benutzerbild von FAlter
FAlter

Registriert seit: 21. Jul 2004
Ort: Ostfildern
1.096 Beiträge
 
FreePascal / Lazarus
 
#5

Re: Zugriffsverletzung beim Freigeben einer TStringList

  Alt 20. Jul 2007, 10:08
Hi,

Zitat von sirius:
for i:=0 to linecount-1 do
Nein, dass ist es nicht - Linecount := s.Count - 1 und Zeile 0 ist der Header.

[ot] btw: Wenn es 0 Zeilen gibt, dass würde es zu einer anderen Exception kommen. Und für den Fall, dass vorher bereits eine CSV geladen wurde, solltest du die StringLists im Content-Array freigeben. Außerdem würde ich den Delimiter und StrictDelimiter nicht hardcoden, sodass deine Klasse später besser nutzbar wird. [/ot]

Bist du sicher, dass das Problem in der Zeile mit s.Free liegt? Oder kommt die AV woanders? Ich sehe keinen Grund für eine AV, außer, dass es bereits ein Problem beim Create gibt. Dann müsstest du das Create vor Try setzen.

Mfg
FAlter

[edit]Tja, dyn. Arrays beginnen aber mit 0, also wars doch nicht so falsch...
Delphi-Quellcode:
  for i := 0 to lineCount - 1 do
  begin
    Content[i] := TStringList.Create;
    Content[i].Delimiter := ';';
    Header.StrictDelimiter := true;
    Content[i].DelimitedText := s[i+1];
  end;
[/edit]
Felix Alter
  Mit Zitat antworten Zitat