Also, so sehen die Daten aus, die du bekommst:
Code:
31.01.1920 Blabalbla
16.05.1928 Tusnelda Geburtstag
Lass das Gefrickel mit den Tagen:
Delphi-Quellcode:
function ExtractDateFromString(s: String): TDateTime;
var
DateStr: String;
FormatSetting: TFormatSettings;
begin
FormatSetting.DateSeparator := '.';
FormatSetting.ShortDateFormat := 'dd.MM.yyyy';
DateStr := Copy(s, 1, 10);
Result := StrToDateTime(DateStr, FormatSetting);
end;
procedure BubbleSort(sl: TStrings);
var
i, j: Integer;
TempStr: String;
begin
for i := sl.Count - 1 downto 1 do
begin
for j := 1 to i do
begin
if ExtractDateFromString(sl[j-1]) > ExtractDateFromString(sl[j]) then
begin
TempStr := sl[j];
sl[j] := sl[j-1];
sl[j-1] := TempStr;
end;
end;
end;
end;
procedure TForm2.Button1Click(Sender: TObject);
begin
BubbleSort(Listbox1.Items);
end;
procedure TForm2.FormCreate(Sender: TObject);
begin
Listbox1.Items.Add('31.01.1920 Blabalbla');
Listbox1.Items.Add('16.05.1928 Tusnelda Geburtstag');
Listbox1.Items.Add('31.08.1974 Michael');
Listbox1.Items.Add('29.06.1949 Helmut');
Listbox1.Items.Add('28.09.1948 Gitta');
Listbox1.Items.Add('20.06.1972 Micky');
Listbox1.Items.Add('29.06.1810 Bismarck');
Listbox1.Items.Add('10.05.1905 Heinz');
end;