Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   OOP (https://www.clubdelphi.com/foros/forumdisplay.php?f=5)
-   -   conversion de fecha texto a fecha formato date (https://www.clubdelphi.com/foros/showthread.php?t=51486)

shinyi 17-12-2007 13:40:50

conversion de fecha texto a fecha formato date
 
Hola foro, como estan?
Tengo un problemita con la conversion de formatos date, ojala puedan ayudarme, mi problema es el siguiente:

Tengo un archivo txt que quiero pasar a BD donde la fecha esta de este modo "sep 06 2007 12:00am" y al pasar a BD quiero que me convierta a "09/06/2007 12:00" y no tengo idea como hacerlo...:cool:

Desde ya muchas gracias, saludos:)

fidel 17-12-2007 15:52:11

Si sabes que el formato es siempre este "sep 06 2007 12:00am" vas cogiendo con copy cada zona correspondiente al mes, dia, año y hora y lo vas trasformando a número y luego juntarlo con encodedate.

Seudocódigo

sFecha := 'sep 06 2007 12:00am';
sMeses := 'ene feb mar abr may jun jul ago sep oct nov dic';

// coger el nombre del mes y ver que posición tiene en la cadena sMeses
iPosición := Pos( copy(sFecha,1,3) , sMeses);
Si iPosición es 1 el mes es el 1
Si iPosición es 5 el mes es el 2
Si iPosición es 9 el mes es el 3
Si iPosición es 13 el mes es el 4
etc

// el mes con copy y tranformarlo a número
StrtoInt( Copy(sFecha,5,2) );

// el año tambíen con copy cogiendo 4 caracteres desde la posición 8 y transformándolos a número

// la hora igual buscando la posición que tenga.

// luego juntarlo todo con encodedate

Más o menos podría ser así.

felipe88 17-12-2007 16:03:45

Ya probaste la funcion StrToDate, aunque no recuerdo muy bien como maneja el formato de la fecha :rolleyes:... dd/mm/aa/h/m/s

shinyi 17-12-2007 20:19:49

conversion de fecha
 
ya llegue hacer un procedimiento como mensiono Fidel. solo q me hace un poco mas lento mi transpaso de datos de un archivo txt a BD
solo q pense si no habia alguna funcion q nos convierta a fecha
pq, utilizando
formatdatetime('d mmm yyyy', fecha)
me convierte la fecha a la fecha texto,
el uso de strtodate: no me reconoce "sep" de la fecha texto

Mucha gracias Muchachos..... si porahi descubro alguna funcion te comento:) si no me quedo con la sugerencia de Fidel


La franja horaria es GMT +2. Ahora son las 08:41:46.

Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi