PDA

Ver la Versión Completa : formato de fecha


ebeltete
02-02-2004, 17:04:11
Hola a todos, tengo unos ficheros con el siguiente nombre:
"2004-02-02 11_20_23.txt"
cuando trato de convertir la fecha a formato date de la siguiente manera
label1.caption:=formatdatetime('dddd-MMMM-yyyy',strtodate('2004-02-02'));
me aparece un error de conversion si tengo configurado de otra forma la fecha en Windows, por ejemplo 02/02/2004, como hago para hacer un strtodate independiente al formato de fecha de Windows??
Gracias

__cadetill
02-02-2004, 17:20:37
Es de suponer que la fecha la sacas del nombre del fichero. Lo que se me ocurre es que, en lugar de sacar toda la fecha, saques sus partes, es decir, el dia, el mes y el año y luego utilices la función EncodeDate

marcoszorrilla
02-02-2004, 21:37:10
Si solo quieres mostrarlo en una etiqueta con esto ejemplo a mejorar te puede servir.

procedure TForm1.Button1Click(Sender: TObject);
Var
cMiFecha:String;
cmes,cdia,canno,cBarra:String;
begin
cBarra:='/';
cMiFecha:='2004-02-02 11_20_23.txt';
canno:=Copy(cMiFecha,1,4);
cmes:=Copy(cMifecha,6,2);
cdia:=Copy(cMiFecha,9,2)';
label1.Caption:=cdia+cBarra+cMes+cBarra+canno;
end;


Con esto no habrá ningún error y se mostrará exactemente lo guardado, si haces lo que te dice Cadetill, entonces tienes que guardar los valores, aplicándo el mismo método pero con la funcion StrToInt y guardarlos en variables de tipo Word, y luego al ejecutar la función EncodeDate, tienes que utilizar un bloque Try....Except....End, ya que nadie nos garantiza que la fecha que han escrito sea una fecha válida.

Un Saludo.