Eu escrevi o seguinte código
Date d = new Date();
CharSequence s = DateFormat.format("MMMM d, yyyy ", d.getTime());
Mas está me perguntando parâmetro, eu quero a data atual no formato de string,
gostar
28-Dec-2011
para que eu possa começar TextView
,
explique um pouco, se você acha que algo é necessário, eu sou novo no Android Development.
android
date
simpledateformat
android-date
Chatar Veer Suthar
fonte
fonte
DateFormat
classe era bom quando essa pergunta foi feita em 2011, essa classe e sua subclasseSimpleDateFormat
sempre foram problemáticas e agora estão desatualizadas há muito tempo. Eu recomendo que você não os use e, em vez disso, procure java.time, a moderna API de data e hora de Java .Respostas:
Você pode usar a
SimpleDateFormat
classe para formatar a data no formato desejado.Basta verificar este link onde você tem uma ideia para o seu exemplo.
Por exemplo:
Atualizar:
O exemplo detalhado está aqui , eu sugiro que você siga este exemplo e entenda o conceito da classe SimpleDateFormat.
Solução final:
fonte
java.util.Date
,java.util.Calendar
, ejava.text.SimpleDateFormat
são agora legado , suplantado pelos java.time classes internas em Java 8 e posterior. Consulte o Tutorial da Oracle .Seu código de uma linha simples para obter a Data atual neste formato aaaa-MM-dd , você pode usar o formato que deseja:
fonte
Isso não tem nada a ver com o Android, pois é baseado em java, para que você possa usar
fonte
fonte
tente isso,
fonte
Você precisa de uma instância primeiro
fonte
Funciona como um encanto e converte em String como um bônus;)
fonte
// importa a classe Date como java.util
fonte
O código abaixo exibe a hora e a data
fonte
fonte
Eu estou fornecendo a resposta moderna.
java.time e ThreeTenABP
Para obter a data atual:
Isso fornece um
LocalDate
objeto, que é o que você deve usar para manter uma data em seu programa. ALocalDate
é uma data sem hora do dia.Somente quando você precisar exibir a data para um usuário, formate-a em uma sequência adequada para a localidade do usuário:
Quando executei esse trecho hoje no código de idioma inglês dos EUA, a saída era:
Se você quiser mais curto, especifique
FormatStyle.MEDIUM
ou mesmoFormatStyle.SHORT
.DateTimeFormatter.ofLocalizedDate
usa o código de idioma de formatação padrão, portanto, o ponto é que ele fornecerá uma saída adequada para esse código de idioma, diferente para códigos de idioma diferentes.Se seu usuário tiver requisitos muito especiais para o formato de saída, use uma sequência de padrão de formato:
Estou usando e recomendando java.time, a moderna API de data e hora de Java.
DateFormat
,SimpleDateFormat
,Date
ECalendar
usado na pergunta e / ou muitas das outras respostas, são mal concebidos e longo desatualizado. E o java.time é muito mais agradável de se trabalhar.Pergunta: Posso usar o java.time no Android?
Sim, o java.time funciona bem em dispositivos Android mais antigos e mais recentes. Requer apenas pelo menos Java 6 .
org.threeten.bp
com subpacotes.Ligações
java.time
foi descrito pela primeira vez.java.time
para Java 6 e 7 (ThreeTen para JSR-310).fonte
DateTimeUtils.toDate(yourLocalDateTime.atZone(ZoneId.systemDefault()).toInstant())
. Se estiver usando o java.time built-in:Date.from(yourLocalDateTime.atZone(ZoneId.systemDefault()).toInstant())
. Consulte Convertendo entre java.time.LocalDateTime e java.util.Date . A resposta oficial da JodaStephen está lá e também uma resposta mostrando o uso do backport .fonte
28-Dec-2011
) que ainda não está nas outras respostas? De qualquer forma, ainda está usando aSimpleDateFormat
classe notoriamente problemática e desatualizada . Por favor, não precisamos de mais respostas para isso.fonte
Um simples ajuste na solução de Paresh:
fonte
fonte
Você pode usar o código a seguir para obter uma data no formato desejado.
fonte
Esta é a melhor resposta ...
fonte
A maneira mais simples de obter a data atual na localidade atual (localidade do dispositivo!):
Se você quiser ter a data em estilos diferentes, use
getDateInstance(int style)
:Outros estilos:
DateFormat.LONG
,DateFormat.DATE_FIELD
,DateFormat.DAY_OF_YEAR_FIELD
, etc. (uso CTRL+Spacepara ver todos eles)Se você precisar de tempo também:
fonte
fonte
tente com este link de código que esta é a resposta correta absoluta para todos os casos em toda a data e hora. ou personalize a data e a hora conforme a necessidade e exigência do aplicativo.
tente com este link. tente com este link
fonte
Eu escrevi o aplicativo de calendário usando o CalendarView e é o meu código:
O campo 'calendar' é meu CalendarView. Importações:
Tenho data atual sem erros.
fonte
Este é o código que eu usei:
fonte
Eu já usei isso:
no início, recebo tempo, depois declarei um formato de data simples (para obter uma data como: 19-6-2018) e depois uso o formato para alterar a data para a string.
fonte
apenas um código de linha para obter um formato simples de data:
saída: 18 de maio de 2020
saída: 18 de maio de 2020 11:00:39
saída: 11:00:39 AM
Espero que esta resposta seja suficiente para obter este formato de data e hora ... :)
fonte
SimpleDateFormat
e as desatualizações há muito ultrapassadas e notoriamente problemáticasDateFormat
. Pelo menos não como a primeira opção. E não sem nenhuma reserva. Hoje temos muito melhor najava.time
moderna API de data e hora de Java, e suasDateTimeFormatter
. Sim, você pode usá-lo no Android. Para Android mais antigo, consulte Como usar o ThreeTenABP no Android Project .Este é o código que eu usei :
fonte