Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

DanielTM

Formatando Datas

Recommended Posts

Fala pessoal, To precisando formatar uma data, ja quebrei ah cabeça e tentei nº formas para tentar resolver e nao consegui.gostaria de exibir ah data em formato dd/mm/aa to usando a funçao DateTime, mas no caso so consigo gerar a data no formato dd/mm/aaaa e ainda com ah hora, mas nao quero exibir a hora.to fazendo assim: lbldata.Text = DateTime.Today; ( assim funciona ok exibe ah hora, no formato dd/mm/aaaa e exibi ah hora mas zerado 000000) eu nao gostaria de exibir essa hora.tentei formatar ah data assim: DateTime minhaData = DateTime.Today; string minhaDataFormatada = minhaData.ToString("dd/MM/yy"); lbldata.Text = minhaData.ToString();mas nao deu.alguem pode me ajudar?

Compartilhar este post


Link para o post
Compartilhar em outros sites

para exibir a hora em formato dd/mm/aaaa você pode usar o Masked Edit Extender do AJAX ( http://www.asp.net/ajax/default.aspx )

 

fica um pouco pesado (dependendo de quantas datas vai exibir na página), mas resolve seu problema. Ele tb só funciona para textbox (nada que um edit no style não ajude).

 

se quer tornar o padrão da página para o formato brasileiro, use Culture=pt-BR. Mas isso não impede de a data ser exibida.

 

para inserir no banco de dados em formato brasileiro, usei o comando SET DATEFORMAT na query de inserção.

 

Exemplo: "SET DATEFORMAT DMY; INSERT INTO ..."

 

 

Ainda existe uma última "Gambiarra". você pode setar a cultura para pt-BR e reduzir o tamanho da textbox para evitar q a hora seja exibida. mas eu não sou mto fã disso. prefiri usar o AJAX, apesar de ficar um pouco pesado.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Macal, achei uma maneira bem mais simples para exibir somente ah horalbldata.Text = System.DateTime.Today.AddMonths(3).ToShortDateString(); ae no caso soma + 3 meses.agora preciso achar um forma simples para formatar ah data para dd/mm/aa alguem tem noção?

Compartilhar este post


Link para o post
Compartilhar em outros sites

Eu nunca testei com dois digitos no ano, mas tenta assim:

lbldata.Text = cDate(Now.Date).ToString("dd/MM/yy")
fala parceiro, valew pela ajuda, deu certo, fiz assim : bldata.Text = System.DateTime.Today.ToString("ddMMyy");

Compartilhar este post


Link para o post
Compartilhar em outros sites

boa!mas se você pega a data de um BD é complicado, pq você n pode usar o "DateTime.Today", uma vez q você quer exibir, por exemplo, a data em q o usuário se cadastrou.gostaria de uma solução para isso.por enquanto continuo usando o AJAX para este caso.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Macal se você pega os dados de um bd, você pode utilizar da forma em que eu coloquei, vamos supor que você alimente um DataReader, isto irá funcionar:

 

lbldata.Text = cDate(dr.Item("CampoData")).ToString("dd/MM/yy")

Mas neste caso ele está somente mostrando a data em uma Label, se o seu caso for colocar Mascara para colocar barras enquanto a data é preenchidas, aí sim o ideal é usar o MaskEdit do Ajax.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Eu nunca testei com dois digitos no ano, mas tenta assim:

 

lbldata.Text = cDate(Now.Date).ToString("dd/MM/yy")

 

Estou com um problema parecido, porém programando em Delphi 6, com InterBase 6, uma data do tipo TimesTamp no banco de dados, e um MaskEdit na tela para salvar, porém, o MaskEdit tem como sua máscara de data MM/DD/AA e eu preciso mudar para DD/MM/AA direto no MaskEdit, você sabe me dizer como fazer isso em tempo de execução?

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.