11 Voto

Delphi/Lazarus: Determinar el Formato de Fecha del Sistema

Pregunta de Invitado | 20/01/2024 a las 17:21

La función FormatDateTime() se puede utilizar para convertir una fecha determinada en formato TDateTime en una fecha legible. Para ello, puede utilizar las constantes o marcadores de posición correspondientes, como yyyy/mm/dd y así sucesivamente.

Sin embargo, me gustaría escribir un programa que también pueda usarse en otros países. Y dependiendo del país, se utiliza otro formato de fecha. Por ejemplo, EE. UU. utiliza el formato dd/mm/yyyy, Alemania utiliza el formato dd.mm.yyyy, etc.

Entonces, ¿existe alguna posibilidad en Delphi o Lazarus de leer la cadena de formato (format string) apropiada de la computadora en la que se ejecuta la aplicación?

ResponderPositivoNegativo
2Mejor Respuesta2 Votos

Sí. Existen las constantes ShortDateFormat y ShortTimeFormat. Esas variables siempre mantienen el formato requerido del sistema.

Simplemente puede usar estas constantes con la función FormatDateTime, por ejemplo así:

var
  s: string;
begin
  s := FormatDateTime(ShortDateFormat, now);
  ShowMessage('Fecha con Formato del Sistema: ' + s); 

  s := FormatDateTime(ShortTimeFormat, now);
  ShowMessage('Hora con Formato del Sistema: ' + s); 

  s := ShortDateFormat + ' ' + ShortTimeFormat;
  s := FormatDateTime(s, now);
  ShowMessage('Fecha y Hora: ' + s); 
end;

En este ejemplo, primero solo mostramos la fecha, luego solo la hora y, por último, la fecha y la hora juntas.
20/01/2024 a las 23:49

ResponderPositivo Negativo
Responder

Temas Relacionados

Cambiar la Fecha de Archivo

Tutorial | 0 Comentarios

Aviso Importante

Por favor tenga en cuenta: Las contribuciones publicadas en askingbox.com son contribuciones de los usuarios y no deben reemplazar el asesoramiento profesional. No son verificados por independientes y no reflejan necesariamente la opinión de askingbox.com. Aprende más.

Participar

Haga su propia pregunta o escriba su propio artículo en askingbox.com. He aquí cómo.