Registriert seit: 12. Jul 2004
Ort: Duisburg
172 Beiträge
Delphi 6 Enterprise
|
Re: Problem mit Abfangen von ner Datumseingabe
3. Jun 2005, 16:15
da ist dein beispiel:
Delphi-Quellcode:
function TForm1.pars(s:string):TDate;
var
i,i2:integer;
s1,s2:string;
begin
if (pos('.',s)>0) and (pos(' ',s)<=0) then begin
//wenn es 01.01.2005 ist
result:=StrToDate(s);
end;
if (pos('-',s)>0) then begin
//wenn es 2005-01-01 ist
i:=pos('-',s);
s1:=copy(s,1,i-1);
Delete(s,1,i);
i:=pos('-',s);
s2:=copy(s,1,i-1);
Delete(s,1,i);
result:=StrToDate(s + '.' + s2 + '.' + s1);
end;
if (pos('.',s)>0) and (pos(' ',s)>0) then begin
//wenn es 1. Januar 2005 ist
i:=pos(' ',s);
s1:=Copy(s,1,i-2);
Delete(s,1,i);
i:=pos(' ',s);
s2:=Copy(s,1,i-1);
Delete(s,1,i);
if LowerCase(s2)='januar' then s2:='1';
if LowerCase(s2)='ferbuar' then s2:='2';
//...
if LowerCase(s2)='dezember' then s2:='12';
result:=StrToDate(s1 + '.' + s2 + '.' + s);
end;
end;
procedure TForm1.Button1Click(Sender: TObject);
begin
Label1.Caption:=DateToStr(pars(Edit1.Text));
end;
Die funktion klappt nur, wenn man das datum genau so eingibt, wie du es beschrieben hast...
Alex Von allen Dingen die mir verloren gegangen,
hab ich am meisten an meinem Verstand gehangen
|
|
Zitat
|