Dicas‎ > ‎

Data e hora

Confira aqui funções relacionadas a data e hora.


  1. Converter Segundos em Horas, minutos e segundos.
  2. Obter o primeiro dia do mês.
  3. Obter o último dia do mês.
  4. Como adicionar dias a uma data qualquer.
  5. Como adicionar meses a uma data qualquer.
  6. Como adicionar anos a uma data qualquer.
  7. Como adicionar horas a um horário qualquer.
  8. Como adicionar minutos a um horário qualquer.
  9. Como adicionar segundos a um horário qualquer.
  10. Função que converte números em uma data.
  11. Função para formatar uma data.
  12. Função para obter os dias entre duas datas.
  13. Função para obter os meses entre duas datas.
  14. Função para obter os anos entre duas datas.
  15. Como extrair o dia de uma data.
  16. Como extrair o mês de uma data.
  17. Como extrair o ano de uma data.
  18. Como obter o número de dias de um mês qualquer.
  19. Como obter o número de dias de um ano qualquer.
  20. Função para obter o dia de Ontem.
  21. Função para obter o dia de Hoje.
  22. Função para obter o dia de Amanhã.
  23. Como saber se uma data é o dia corrente.
  24. Função que converte números em uma hora (horário).
  25. Função para formatar uma hora.
  26. Como capturar a hora de um TDateTime.
  27. Como capturar a data de um TDateTime.
  28. Como obter os minutos correspondentes a um horário.
  29. Como obter os segundos correspondentes a um horário.

Converter Segundos em Horas, minutos e segundos

{ Nesta forma já impede a inserção de valores negativos,
além de suportar um valor maior de entrada de segundos. }
function SecondToTime( Segundos : Cardinal ) : String;
var
  Seg, Min, Hora: Cardinal;
begin
  Hora := Segundos div 3600;
  Seg := Segundos mod 3600;
  Min := Seg div 60;
  Seg := Seg mod 60;
  Result := FormatFloat(',00', Hora) + ':' +
  FormatFloat('00', Min) + ':' +
  FormatFloat('00', Seg);
end;

Topo


Obter o primeiro dia do mês

{ É necessário declarar DateUtils. }
// Basta passar uma data por parametro
StartOfTheMonth( const aValue: TDateTime );
// Exemplo de uso
StartOfTheMonth( Date );

Topo


Obter o último dia do mês

{ É necessário declarar DateUtils. }
// Basta passar uma data por parametro
EndOfTheMonth( const aValue: TDateTime );
// Exemplo de uso
EndOfTheMonth( Date );

Topo


Como adicionar dias a uma data qualquer

{ É necessário declarar DateUtils. }

// Função : IncDay( Data, Dias a adicionar)
// Retorno: TDateTime

// Exemplo
procedure TForm1.Button1Click(Sender: TObject);
begin
  ShowMessage(  FormatDateTime('dd.mm.yyyy', IncDay(Date, 1)  ));
end;

Topo





Como adicionar meses a uma data qualquer

{ É necessário declarar DateUtils. }

// Função : IncMonth( Data, meses a adicionar)
// Retorno: TDateTime

// Exemplo
procedure TForm1.Button1Click(Sender: TObject);
begin
  ShowMessage(  FormatDateTime('dd.mm.yyyy', IncMonth(Date, 1)  ));
end;

Topo


Como adicionar anos a uma data qualquer

{ É necessário declarar DateUtils. }

// Função : IncYear( Data, anos a adicionar)
// Retorno: TDateTime

// Exemplo
procedure TForm1.Button1Click(Sender: TObject);
begin
  ShowMessage(  FormatDateTime('dd.mm.yyyy', IncYear(Date, 1)  ));
end;

Topo


Como adicionar horas a um horário qualquer

{ É necessário declarar DateUtils. }

// Função : IncHour( Horário, horas a adicionar)
// Retorno: TDateTime

// Exemplo
procedure TForm1.Button1Click(Sender: TObject);
begin
  ShowMessage(  FormatDateTime('hh:MM:ss', IncHour(Now, 1)  ));
end;

Topo


Como adicionar minutos a um horário qualquer

{ É necessário declarar DateUtils. }

// Função : IncMinute( Horário, minutos a adicionar)
// Retorno: TDateTime

// Exemplo
procedure TForm1.Button1Click(Sender: TObject);
begin
  ShowMessage(  FormatDateTime('hh:MM:ss', IncMinute(Now, 1)  ));
end;

Topo


Como adicionar segundos a um horário qualquer

{ É necessário declarar DateUtils. }

// Função : IncSecond( Horário, minutos a adicionar)
// Retorno: TDateTime

// Exemplo
procedure TForm1.Button1Click(Sender: TObject);
begin
  ShowMessage(  FormatDateTime('hh:MM:ss', IncSecond(Now, 25)  ));
end;

Topo


Função que converte números em uma data

// Função : EncodeDate( Ano, mês, dia)
// Retorno: TDateTime

// Exemplo
procedure TForm1.Button1Click(Sender: TObject);
begin
  ShowMessage(  FormatDateTime('dd.mm.yyyy', EncodeDate(2011, 9, 15) ));
end;

Topo


Função para formatar uma data

// Função : FormatDateTime( Formato, Data )
// Retorno: String

// Exemplo
procedure TForm1.Button1Click(Sender: TObject);
begin
  // Data Normal
  ShowMessage(  FormatDateTime('dd.mm.yyyy', Date ));

  // Data por extenso
  ShowMessage(  FormatDateTime('dddd'', ''mm'' de ''mmmm'' de ''yyyy', Date ));
end;

Topo


Função para obter os dias entre duas datas

{  É necessário declarar DateUtils }
// Função : DaysBetween( Data Inicial, DataFinal )
// Retorno: Integer

// Exemplo
procedure TForm1.Button1Click(Sender: TObject);
begin
   ShowMessage(IntToStr( DaysBetween(EncodeDate(2010, 5, 15), Date) ));
end;

Topo


Função para obter os meses entre duas datas

{  É necessário declarar DateUtils }

// Função : MonthsBetween( Data Inicial, DataFinal )
// Retorno: Inteiro( Integer )

// Exemplo
procedure TForm1.Button1Click(Sender: TObject);
begin
   ShowMessage(IntToStr( MonthsBetween(EncodeDate(2010, 5, 15), Date) ));
end;

Topo


Função para obter os anos entre duas datas

{  É necessário declarar DateUtils }
// Função: YearsBetween( Data Inicial, DataFinal )
// Retorno: Inteiro( Integer )

// Exemplo
procedure TForm1.Button1Click(Sender: TObject);
begin
   ShowMessage(IntToStr( YearsBetween(EncodeDate(2008, 5, 15), Date) ));
end;

Topo


Como extrair o dia de uma data

{  É necessário declarar DateUtils }
// Função : DayOf( Data )
// Retorno: Inteiro( Integer )

// Exemplo
procedure TForm1.Button1Click(Sender: TObject);
begin
   ShowMessage(IntToStr( DayOf(EncodeDate(2008, 5, 15) ) ));
end;

Topo


Como extrair o mês de uma data

{  É necessário declarar DateUtils }
// Função : MonthOf( Data )
// Retorno: Inteiro( Integer )

// Exemplo
procedure TForm1.Button1Click(Sender: TObject);
begin
   ShowMessage(IntToStr( MonthOf(EncodeDate(2008, 5, 15) ) ));
end;

Topo


Como extrair o ano de uma data

{  É necessário declarar DateUtils }
// Função : YearOf( Data )
// Retorno: Inteiro( Integer )

// Exemplo
procedure TForm1.Button1Click(Sender: TObject);
begin
   ShowMessage(IntToStr( YearOf(EncodeDate(2008, 5, 15) ) ));
end;

Topo


Como obter o número de dias de um mês qualquer

{  É necessário declarar DateUtils }
// Função : DaysInMonth( Data )
// Retorno: Inteiro( Integer )

// Exemplo
procedure TForm1.Button1Click(Sender: TObject);
begin
   ShowMessage(IntToStr( DaysInMonth(EncodeDate(2008, 5, 15)) ));
end;

Topo


Como obter o número de dias de um ano qualquer

{  É necessário declarar DateUtils }
// Função : DaysInYear( Data )
// Retorno: Inteiro( Integer )

// Exemplo
procedure TForm1.Button1Click(Sender: TObject);
begin
   ShowMessage(IntToStr( DaysInYear(EncodeDate(2008, 5, 15)) ));
end;

Topo


Função para obter o dia de Ontem

{  É necessário declarar DateUtils }

// Função: Yesterday

// Exemplo
procedure TForm1.Button1Click(Sender: TObject);
begin
   ShowMessage( FormatDateTime('dd.mm.yyyy', Yesterday) );
end;

Topo


Função para obter o dia de Hoje

// Existem 3 Exemplos básicos

// Função: Today
// Função: Date
// Função: Now

procedure TForm1.Button1Click(Sender: TObject);
begin
  {  É necessário declarar DateUtils }
  ShowMessage( FormatDateTime('dd.mm.yyyy', Today) );

  {  É necessário declarar SysUtils }
  ShowMessage( FormatDateTime('dd.mm.yyyy', Date) );

  {  É necessário declarar SysUtils - Aqui vem a hora atual também. }
  ShowMessage( FormatDateTime('dd.mm.yyyy hh:MM:ss', Now) );
end;

Topo


Função para obter o dia de Amanhã

{  É necessário declarar DateUtils }

// Função: Tomorrow

// Exemplo
procedure TForm1.Button1Click(Sender: TObject);
begin
   ShowMessage( FormatDateTime('dd.mm.yyyy', Tomorrow) );
end;

Topo


Como saber se uma data é o dia corrente

{  É necessário declarar DateUtils }

// Função: IsToday

// Exemplo
procedure TForm1.Button1Click(Sender: TObject);
begin
  if IsToday( EncodeDate(2007, 12, 15) ) then
    ShowMessage('Esta data é hoje.')
  else
    ShowMessage('Esta data não é hoje.')
end;

Topo


Função que converte números em uma hora (horário)

{  É necessário declarar SysUtils }

// Função: EncodeTime(Horas, minutos, segundos, miléssimos)

// Exemplo
procedure TForm1.Button1Click(Sender: TObject);
begin
  ShowMessage(FormatDateTime('hh:MM:ss', EncodeTime(15, 30, 55, 0) ));
end;

Topo


Função para formatar uma hora

{  É necessário declarar SysUtils }

// Função: FormatDateTime(Formado da hora, horário)

// Exemplo
procedure TForm1.Button1Click(Sender: TObject);
begin
  ShowMessage(FormatDateTime('hh:MM:ss', EncodeTime(15, 30, 55, 0) ));
end;

Topo


Como capturar a hora de um TDateTime

{ É necessário declarar DateUtils }

// Função: GetTimeInDateTime(Data)

function GetTimeInDateTime(Data : TDateTime) : TTime;
begin
  Result := EncodeTime(HourOf(Data), MinuteOf(Date), SecondOf(Date),
  MilliSecondOf(Date));
end;

Topo


Como capturar a data de um TDateTime

{  É necessário declarar SysUtils }

// Função: GetDateInDateTime(Data)

function GetDateInDateTime(Data : TDateTime) : TDate;
begin
  Result := EncodeDate(YearOf(Data), MonthOf(Data), DayOf(Data));
end;

Topo


Como obter os minutos correspondentes a um horário

{  É necessário declarar DateUtils }

// Função: GetMinutesInHour( Horario )

function GetMinutesInHour( Horario : TTime ) : Integer;
begin
  Result := (HourOf(Horario) * 60) + MinuteOf(Horario);
end;

Topo


Como obter os segundos correspondentes a um horário

{  É necessário declarar DateUtils }

// Função: GetSecondInHour( Horario )

function GetSecondInHour( Horario : TTime ) : Integer;
begin
  Result := (HourOf(Horario) * 3600) + (MinuteOf(Horario) * 60) +
  SecondOf(Horario);
end;

Topo



Delphi, Delphi XE, Delphi 7, Dicas, Truques, procedimentos, procedimento, funções, function, função, procedure, exemplo de uso, Data, hora, minutos, segundos, validar, mês, mes