Obrigado por visitar a devmedia.com.br!

Precisamos de você para divulgar nossos vídeos e cursos gratuitos para a comunidade.

Se você gosta da devmedia.com.br por favor dê-nos o seu clique para o Google+ e ajude outros desenvolvedores ao redor do mundo.



Obrigado por seu apoio!
Equipe DevMedia

sair sem compartilhar (x)
DevMedia - asp.net, Java, Delphi, SQL e web Design, tudo em um só lugar!
Bem vindo a DevMedia!
LOGIN:     SENHA:

Trabalhando com datas no VB.Net

Frequentemente no desenvolvimento de nossas aplicações necessitamos trabalhar com um tipo de dado especial, o DateTime.

 

Frequentemente no desenvolvimento de nossas aplicações necessitamos trabalhar com um tipo de dado especial: “DateTime”. Somar datas, calcular intervalos de tempo, obter a data e hora atual são algumas dessas operações realizadas com o tipo de dado “DateTime”. O namespace System.DateTime permite o acesso a métodos e propriedades que tratam de datas e horas.  Na tabela abaixo, são listados as propriedades presentes na namespace System.DateTime.

 

Propriedades

Retorno

Date

Retorna um datetime representando a data atual

Day

Retorna um inteiro representando o dial atual

DayOfWeek

Retorna um inteiro representando o dia da semana. Exemplo:  Se o dia da semana for uma sexta-feira, a função retornará 5.

DayOfYear

Retorna um inteiro representando o dia do ano. Exemplo: Supondo que hoje seja 8/6/2007, esse método retornará 159 que corresponde ao dia do ano.

Hour

Retorna um inteiro representando a hora atual

Millisecond

Retorna um inteiro representando o milisegundo atual

Minute

Retorna um inteiro representando o minuto atual

Month

Retorna um inteiro representando o mês atual

Now

Retorna um datetime representando a data atual e a hora atual.

Second

Retorna um inteiro representando o segundo atual

Ticks

Os valores de hora são medidos em unidades de 100 nano segundos que são chamadas Ticks. Uma data especifica é o número de pulsos contados a partir da meia-noite de 01/01/0001 no calendário Gregoriano.

TimeOfDay

Retornar um TimeSpan que representa um intervalo de tempo, ou duração de tempo, medida como um número positivo ou negativo de dias,  horas, minutos, segundos e frações de segundo.

Today

Retorna um datetime com a data corrente.

Year

Retorna um inteiro representando o ano atual

Tabela 1 – Lista com as propriedades da System.DateTime.

 

Além das propriedades listadas acima, a namespace System.DateTime apresenta uma lista de métodos específicos para trabalhar com cálculos de data. Na tabela abaixo é listado alguns dos principais métodos.

 

Método

Retorno

AddDays

Adiciona um número especifico de dias a uma determinada data

AddHours

Adiciona um número especifico de horas a uma determinada hora

AddMonths

Adiciona um número especifico de meses a uma determinada data

AddYears

Adiciona um número especifico de anos a uma determinada data

Compare

Compara duas datas

DaysInMonth

Retorna um inteiro representando o numero de dias de um mês

Equals

Retorna um booleano representando se as datas são iguais.

IsLeapYear

Retorna um booleano representando se no ano informado é um ano bissexto.

Parse

Converte uma string em DateTime

ToShortDateString

Converte um valor em um tipo de data curto. Exemplo: 01/01/2007 08:00:01, converte em 01/01/2007

ToLongDateString

Converte um valor em um tipo de data longo. Exemplo: 01/01/2007, converte em 01/01/2007 08:00:01

Tabela 2 – Lista com os eventos da System.DateTime.

 

Uma observação em relação ao VB6, é que o VB6 armazena a data e a hora em um formato diferente do VB.NET. Os programadores VB acessam valores numéricos de datas como um Double. As datas no VB.NET são armazenadas como inteiro longo. Para converter uma informação de data no formato antigo para o novo formato use as funções : ToOADate() e FromOADate().

 

Para testar a System.DateTime, crie um novo projeto (WindowsApplication) no Visual Studio. Net 2005. No evento Load desse projeto, iremos utilizar várias MsgBox que representará o resultado de cada operação com data. Veja na imagem abaixo o código desenvolvido para testar alguns dos métodos e propriedade dessa namespace.

 

    Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load

        'Obtem data e hora atual do sistema

        MsgBox(Date.Now)

        'Obtendo dia da semana

        MsgBox(String.Format("{0:dddd}", Now))

        'Soma 20 dias a data atual

        MsgBox(Date.Now.AddDays(20))

        'Subtrai 15 dias da data atual

        MsgBox(Date.Now.AddDays(-15))

        'Exibe uma mensagem informando se o ano é bissexto

        If Date.IsLeapYear(2007) = True Then

            MsgBox("Ano Bissexto")

        Else

            MsgBox("Ano Não Bissexto")

        End If

        'Exibe o número de dias do mês para  o ano de 2007 e mes 2

        MsgBox("O numero de dias do mês é: " & Date.DaysInMonth(2007, 2))

     

    End Sub

Listagem 1 – Exemplo de Métodos e Propriedades da namespace System.DateTime.

 

Chegamos ao final do artigo e podemos notar que com a namespace System.DateTime, nossos problemas com datas e horas acabaram.

 

Até o próximo.





    3 COMENTÁRIOS

[Fechar]

Este post é fechado - você precisa ter acesso ao post para incluir um comentário.



Rodrigo Ribeiro De Gonzaga
Parabéns pela simples, objetiva e útil abordagem sobre Datas no VB.NET


em 22/9/2007 15:54 - Responder

 

  Regilan
Olá Rodrigo..Muito obrigado mesmo!!! É gratificante receber um feedback dos leitores...


em 21/11/2007 21:17 - Responder
 

Hélio Silva
Realmente simples e objetivo. Valeu! Ficarei esperando as próximas. Obrigado, mesmo!


em 30/3/2008 14:32 - Responder

 



[Este post ainda não foi associado a uma sequência]
Autor
Regilan Meira Silva

Regilan Meira Silva (regilan@gmail.com), é Bacharel em Ciência da Computação pela Universidade Estadual de Santa Cruz(UESC) em Ilhéus, Bahia e Especialista em Administração de Sistemas da Informação pela Universidade Federal de Lavras em Lavras, Minas Gerais. Trabalha com desenvolvimento de sistemas...


Space do autor
Estatísticas
Favorito:
Comentários:
Feedback:
Utilidade:
6   1
[Fechar]

Você precisa estar logado para dar um feedback.

Clique aqui para efetuar o login
[Fechar]
Este post está disponível para assinantes da .net Magazine ou para quem possui Créditos DevMedia.

  Conheça os planos de créditos DevMedia e visualize esse post agora mesmo!

Plano conveniência – Neste plano este post custa R$ 0,00 (Compre agora)
Esse plano permite que você compre somente um post, pagando por ele seu preço sem desconto.

Plano ocasional: Aqui este post custa: R$ -1,00 (assinante) ou R$ -1,00 (não-assinante)
Este plano é ideal para quem tem interesse em mais de um post. Você compra um mínimo de R$ 50,00 em créditos e ganha, em média, 50% de desconto no preço do post. Compre Créditos agora!

Assinatura de Créditos (Plano econômico) – Aqui este post custa R$ -1,00
Este plano é ideal para quem tem interesse em muitos posts. Com esse plano você compra R$ 180,00 em créditos e ganha, em média, 80% de desconto no preço do post. Assine este plano agora!

> Saiba mais sobre o Sistema de Créditos DevMedia
web-03
DevMedia  |  Anuncie  |  Fale conosco
Hospedagem web por Porta 80 Web Hosting
2012 - Todos os Direitos Reservados a web-03