Zitat von
alzaimar:
1. mit Add('') und dann aList[aList.count - 1] := aList[aList.count - 1] + aNewChar gehts.
Danke. Wenn das soweit problemlos funktioniert, mach ich es auch so
Zitat von
alzaimar:
Warum nicht so:
Delphi-Quellcode:
Procedure LineToStrings (aInput : String; aSrc : TStringList);
Var
aStart, i, n : Integer;
aLine : String;
Begin
aSrc.Clear;
aStart := 1; // Index auf das erste Zeichen der aktuellen Zeile
aInput := aInput + ccEOF; // sicherstellen, das auch die LETZTE Zeile erkannt wird.
For i:=1 To Length (aInput) do
If aInput[i] in [';', ccEOF] then Begin // Zeilenende erreicht?
// Die Zeile ist zwischen aStart und i-1
aLine := Trim (Copy (aInput, aStart, i - aStart));
If aLine<>'' Then aSrc.Add (aLine);
aStart := i + 1;
End;
End;
Würde dieser Code nicht für JEDE ZEILE einen StringList-Eintrag machen? Wenn ja, dann ist genau das der FALSCHE Weg. Ich muss den String ja auseinandernehmen und analysieren. Ich mache beispielsweise für jede Zeile EINE NEUE STRINGLISTE. Dann in die entsprechenden Indizen der StringListen jeweils EINEN AUSDRUCK meines "Codes".
Es ist mir übrigens egal, ob das jemand versteht... Das ist nunmal meine Methode, ich hab sie so angefangen und ziehe es so durch. Und Hauptsache ist ja, dass ich es verstehe