quinta-feira, 11 de outubro de 2007

Foamatação de data

Para formatar uma data no formato "quinta-feira, 11 de outubro de 2007" vamos utilizar as seguintes funções:

Esta função vai pegar mês passado no parametro e retorna a sua escrita.

Function mes_extenso(ByVal mes As Integer) As String
Dim strMes As String = ""
Select Case mes
Case 1
strMes = "janeiro"
Case 2
strMes = "fevereiro"
Case 3
strMes = "março"
Case 4
strMes = "abril"
Case 5
strMes = "maio"
Case 6
strMes = "junho"
Case 7
strMes = "julho"
Case 8
strMes = "agosto"
Case 9
strMes = "setembro"
Case 10
strMes = "outubro"
Case 11
strMes = "novembro"
Case 12
strMes = "dezembro"
End Select
Return strMes
End Function



Esta função pega o dia da semana passado no parametro e retorna a sua escrita.

Function dia_extenso(ByVal dia As Integer) As String
Dim strDia As String = ""
Select Case dia
Case 1
strDia = "domingo"
Case 2
strDia = "segunda-feira"
Case 3
strDia = "terça-feira"
Case 4
strDia = "quarta-feira"
Case 5
strDia = "quinta-feira"
Case 6
strDia = "sexta-feira"
Case 7
strDia = "sábado"
End Select
Return strDia
End Function


Acrescente um campo Label na sua página e altera o seu nome para lblData. Para um melhor entendimentos dos nomes de objetos ou váriaveis é recomendado você utilizar um padrão de escrita, pessoalmente eu prefiro a seguinte forma:

tipo de objeto + Nome
Ex: lblData, txtDescricao, etc.

No caso de nomes de váriaveis eu utilizo o seguinte:

tipo de variavel + Nome
Ex: intNumeroPedido, strTexto, etc.


Agora que já tratamos do Label, no Page_Load da sua página faça o seguinte:

Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
If Not Page.IsPostBack Then
lblData.Text = dia_extenso(Weekday(Now())) & ", " & Day(Now()) & " de " & mes_extenso(Month(Now())) & " de " & Year(Now())
End If
End Sub


Explicando o código...

- Primeiro utilizamos a function dia_extenso() para retornar o segunda-feira por exemplo;
- Depois utilizamos a função nativa do ASP Weekday() para retornar na função dia_extenso() o dia da semana;
- Depois disso concatenamos tudo isso com o dia, o retorno da função mes_extenso() e o ano;


Com isso o resultado para a data 11/10/2007 será quinta-feira, 11 de outubro de 2007.

Nenhum comentário: