![]() |
Requerimiento de función que devuelva hora en varios formatos
¿Y que te parecería una función que devuelva la hora en varios formatos (entero, flotante, string)?
Es decir, yo le enviaría la hora en el formato de la máquina y que devolviese el valor en distintas escalas. Se me ocurriría una llamada así:
Donde ghFormato sea el formato de destino. 0 = Integer. 1 = Double. 2 = String corto (hh:mm) [formato 12 horas] 3 = String corto (HH:mm) [formato 24 horas] 4 = String largo (HH:mm.ss) [formato 24 horas con segundos] 5 = String largo (HH:mm.ss mmm) [formato 24 horas con segundos y milisegundos] Ahí me platicas, compadre, si te "late" la idea como para ingresarla a tu librería. |
Hola Felipe.
Es necesario más contexto para comprender el requerimiento. Las opciones de la 2 a la 5 se resuelven bien con la función nativa FormatDateTime. En cuando a las opciones 0 y 1 te agradecería algunos ejemplos de valores de entrada con sus respectivos valores de salida. Ahora, suponiendo que ya existiera la función que sugieres, ¿cómo la usarías? ¿Alguna pieza de código un poco más generosa para dar una idea? Resulta importante conocer el origen de este tipo de inquietudes. Quedo a la espera de tu retroalimentación, saludos. :) |
Cita:
Me he visto en muchos problemas para calcular horas/fechas, sumar la hora a una fecha y como éste número (la hora) es un número de punto flotante, es conveniente tenerlo presente para realizar sumar a un TDate un TTime (en formato de punto flotante) y obtener un TDateTime. Espero haber sido claro, y si no lo fuí, avísame y te confundo más... :p |
Yo creo que, en lugar de elegir el formato con números, usar una cadena al estilo de la función date de PHP. En principio no debería ser muy difícil. Bastaría con un bucle que fuera recorriendo la cadena comprobando cada carácter. Si no puedes, la puedo hacer yo.
|
De entrada olvida los tipos TDate y TTime, que son tipos especiales de la VCL equivalentes a TDateTime, pero en esencia útiles para asuntos de RTTI, como el diseño de componentes que lleven propiedades de fecha u hora. Mientras no sea éste el caso, emplea el tipo estándar TDateTime para manejar fechas, horas y combinaciones de ambas.
Cita:
Cita:
Cita:
Gracias, seguimos por aquí. |
Cita:
Cita:
|
Cita:
|
Compadre Felipe, esta semana liberaré la versión de abril. ¿Qué has pensado respecto a las respuestas anteriores? ¿Persiste la necesidad que planteabas al inicio? Ayúdame a comprenderla del todo, no estaría mal anexar un miniprograma de ejemplo al requerimiento. :)
Saludos. |
Cita:
Pero con todo gusto revisamos qué de nuevo traen las librerías, cómo de que no... :p:D |
Cita:
|
La franja horaria es GMT +2. Ahora son las 05:04:22. |
Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi