Como formatar datas em java

Video: Formatação de data Java/JSP

Java é uma linguagem de programação versátil. Se você usar o para sequenciar() método para converter um LocalDate para uma cadeia, você recebe uma string como 2014/10/31. E se você deseja exibir a data em um formato diferente, como 2014/10/31 ou 31 de outubro de 2014?

Video: Tutorial data/date com Java

Para conseguir isso, você pode usar o formato método do LocalDate classe, juntamente com um formatador personalizado que você cria usando o DateTimeFormatter classe. Para especificar o formato que você deseja usar, você passa o DateTimeFormatter Classe A cadeia padrão, usando os símbolos de formatação listadas na Tabela 5-4.

padrão de formatoExplicação
yAno (dois ou quatro dígitos)
MMês (um ou dois dígitos ou três ou mais cartas)
dDia do mês (como 1, 28)
HHora
mMinuto
ssegundo (0-para 59)
hhora (1 para 12)
umaAM ou PM
VID fuso horário (tal como América / Los_Angeles)
zTempo nome zona (tal como Pacific Daylight
Tempo
)

A maneira mais fácil de criar um DateTimeFormatter objeto é usar a estática ofPattern método juntamente com uma cadeia padrão. Por exemplo:

DateTimeFormatter formatador-formatador = DateTimeFormatter.ofPattern ("dd MMM AAAA") -

Este formatador produz datas formatadas como 04 SEP 2014. Você pode então usar o formatador para produzir um formatado encontro string como esta:

Video: Aula 6 - Datas em java

data LocalDate = LocalDate.now () - corda formattedDate = date.format (formatador) -


Aqui está um programa simples que imprime a data atual em vários formatos diferentes:

import java.util. * - import java.time. * -. importação java.time.format * - FormatDateTime classe pública {static void main (String [] args) {públicas LocalDateTime agora = LocalDateTime.now () - PrintDate (agora , "AAAA-MM-dd") -printDate (agora, "MM-dd-AAAA") -printDate (agora, "dd MMM AAAA") -printDate (agora, "MMMM d, AAAA") -printDate (agora, "Hh: mm") -printDate (agora, "H: um milímetro") -} void PrintDate (data LocalDateTime public static, String padrão) {DateTimeFormatter f-f = DateTimeFormatter.ofPattern (padrão) -pattern = (padrão + "") .substring (0, 14) -System.out.println (padrão + " " + Date.format (f)) -}}

Quando você executar este programa, você poderá obter a saída do console que se assemelha a seguinte:

AAAA-MM-dd 2013-10-09MM-dd-AAAA 10-09-2013dd MMM AAAA 09 de outubro 2013MMMM d, AAAA 9 de outubro de 2013HH: 20 mm: 29h: mm a 8:29

Você notou o truque legal formatação? Você pode forçar o System.out.printlnl () padrões para imprimir 14 caracteres longas seqüências assim todas as datas que se alinhe O preenchimento é realizado por esta linha mancha de código:

= padrão (padrão + "") .substring (0, 14) -

Aqui uma seqüência de 14 espaços é adicionado ao padronizar corda, em seguida, um de 14 caracteres longo substring é tomada a partir do primeiro caractere. O bom espaçamento na saída torna mais fácil para você ver o efeito de cada uma das cadeias de caracteres padrão.


Publicações relacionadas